Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 7, 2014 10:49:57

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

ставим

$ sudo pip install hy

запускаем
$ hy

наслаждаемся
=> (print (sum (map ord "Happy new year to you!")))

Ссыль

Отредактировано bismigalis (Янв. 7, 2014 13:08:03)

Офлайн

#2 Янв. 7, 2014 12:05:58

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

Ещё был-бы интересен в стиле CoffeScript

do ->
  print map [1,2,3], (x) ->
    if x % 2
      x*2
    else
      x*x

т.е. вместо “lambda x:”, писать “(x) ->”, + возможность их стартовать на месте “do ->”
да и “:” после if и for необязательны, вот тут например их нет
[x for x in range(3) if x%2]

Отредактировано o7412369815963 (Янв. 7, 2014 12:30:17)

Офлайн

#3 Янв. 7, 2014 12:27:13

smoke853
Зарегистрирован: 2012-10-02
Сообщения: 123
Репутация: +  15  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

Интересная вещь, надо будет поставить

Офлайн

#4 Янв. 7, 2014 12:48:04

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

для меня CoffeScript китайская грамота, лисп привлекает как раз своей однородностью

вот лямбда в Hy

(map (fn [x]
       (if (% x 2)
         (* x 2)
         (* x x)))
     [1 2 3])

а вот лист компрехеншен

(list-comp x [x (range 3)] (% x 2))

Отредактировано bismigalis (Янв. 7, 2014 14:30:04)

Офлайн

#5 Янв. 7, 2014 15:21:32

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

там вон анафорический map есть еще

(ap-map (if (odd? it) 
(* it 2)
(* it it))
[1 2 3 4])

Офлайн

#6 Янв. 7, 2014 21:52:03

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

sergeek у меня не работает

NameError: name 'ap_map' is not defined

или надо еще что-то сделать?

Офлайн

#7 Янв. 8, 2014 00:12:51

Singularity
Зарегистрирован: 2011-07-28
Сообщения: 1387
Репутация: +  75  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

Офлайн

#8 Янв. 8, 2014 00:15:43

Singularity
Зарегистрирован: 2011-07-28
Сообщения: 1387
Репутация: +  75  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

bismigalis
sergeek у меня не работает
питон 3 онли (?)

Офлайн

#9 Янв. 8, 2014 00:29:35

smoke853
Зарегистрирован: 2012-10-02
Сообщения: 123
Репутация: +  15  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

bismigalis
или надо еще что-то сделать?
импортировать нужно.
Вот скрин, у меня работает, для примера взял ap-each
http://savepic.net/4196206.htm

P.S. на код в emacs не обращайте внимания

Офлайн

#10 Янв. 8, 2014 11:00:19

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Hy - гомоиконный питон

smoke853 спасибо, теперь работает

я еще не настолько лиспер чтобы догадаться, а в доках нету :)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version