Hy吉祥物,一只看起来很快乐的卡通乌贼

海伊

Hy是一种嵌入Python中的Lisp方言。

Hy(长期称为“Hylang”)是这个Lisp家族.它是实现为Python的一种替代语法。与相比Python、Hy提供了各种新特性、泛化和语法简化,就像Lisp所期望的那样。与相比其他Lisp、Hy提供了对Python内置程序和第三方Python库,同时允许您自由混合命令式、函数式和面向对象的编程风格。(更多关于“为什么是Hy?”)

要安装Hy的最新版本,只需使用以下命令pip3安装--用户hy。然后您可以使用启动交互式读取评估打印循环(REPL)命令hy(希),或使用运行Hy程序hy我的程序.hy.

示例代码

请参阅教程更多示例。

海伊蟒蛇
(setv foobar(+2 2))(setv[tim eric][“jim”“derick”])(setvα“a”β“b”)foobar=2+2蒂姆,埃里克=“吉姆”,“德里克”α=“a”;β=“b”
(排序为“abcBC”:键(fn[x](.lower x))排序(“abcBC”,键=λx:x.lower())
(定义测试[a b[c“x”]#*d]【a b c d】)定义测试(a,b,c=“x”,*d):返回[a,b,c,d]
(使用[o(打开“file.txt”“rt”)](设置缓冲区[])(while(<(len缓冲区)10)(.append缓冲区(下一个o)))打开('file.txt','rt')为o:缓冲区=[]当len(缓冲区)<10时:buffer.append(下一个(o))
(对于x(范围3)y(范围3):如果(=(+x y)3)(*x y))[x*y对于范围(3)中的x对于范围(3)中的y如果x+y==3]
(defmacro do-while[测试#*body]`(执行~@尸体(当~测试时~@body))(设置值x 0)(do-while x(打印“打印一次”)x=0打印(“打印一次”)而x:打印(“打印一次”)