HyLisp编程语言的一种方言。它设计用于同Python语言进行交互,方式是把表达式翻译成Python的抽象语法树(AST)[2][3]。Paul Tagliamonte在2013年于Python会议(PyCon)介绍了Hy[4]

事实速览 编程范型, 语言家族 ...
Hy
Thumb
编程范型多范型: 过程式, 函数式, 面向对象, 元编程, 反射式, 泛型
语言家族Lisp
設計者Paul Tagliamonte
實作者核心团队
发行时间2013年,​11年前​(2013
当前版本
  • 1.0.0(2024年9月22日;穩定版本)[1]
編輯維基數據鏈接
作用域词法
實作語言Python
系统平台IA-32, x86-64
操作系统跨平台
許可證MIT
文件扩展名.hy
網站hylang.org
啟發語言
Kawa英语Kawa (Scheme implementation), Clojure, Common Lisp
关闭

类似于Kawa英语Kawa (Scheme implementation)Clojures-表达式映射到Java虚拟机(JVM)之上[5],Hy必定作为Python抽象语法树的透明Lisp前端来运行[6]。Lisp允许像数据那样在代码上进行操作(元编程)。因此,Hy可以用来书写领域特定语言[7]。Hy还允许导入Python包括标准库,并与Hy代码一起被访问,方式是通过一个编译步骤[note 1],将二者的数据结构翻译成Python的AST[note 2][8][9][10]

例子代码

来自语言文档的例子[11]

=> (print "Hy!")
Hy!
=> (defn salutationsnm [name] (print (+ "Hy " name "!")))
=> (salutationsnm "YourName")
Hy YourName!

参见

Thumb
Hy标志和吉祥物墨鱼Cuddles

注释

引用

外部链接

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.