Hy

Hy（またはHylang）は、式をPythonのAST（抽象構文木）へ変換することで、PythonとLisp間でのやり取りができるように設計されたプログラミング言語Lispの方言のひとつである。HyはPython Conference（PyCon）2013でPaul Tagliamonteが発表した。

KawaやClojureにおいて、S式がJava仮想マシン（JVM）の抽象構文木にマッピングされるのと同様に、Hyは、Pythonの抽象構文に対する透過的なLispフロントエンドとして使用することが想定されている。Lispではコード自体をデータとして操作することが可能である（メタプログラミング）ため、Hyをドメイン固有言語（DSL）として使用することができる。Hyのコードは、コンパイル"Compiled" is a term which may apply to expressing Hy code in Python's AST or converting that AST into bytecode, the latter being dependent on the specific Python interpreter used and not Hy.時に両言語のコードをPythonのASTにステップ変換するため、標準ライブラリを含むPythonのライブラリにインポートしたり、ライブラリからHyのコードにアクセスしたりすることが可能であるHy is tested on Python 2.7, 3.4 through 3.6, and PyPy.。

 コード例 
以下はHy言語のドキュメントからの引用である。=> (print "Hy!")
Hy!
=> (defn salutationsnm [name] (print (+ "Hy " name "!")))
=> (salutationsnm "YourName")
Hy YourName!

 関連項目 

 Clojure
 Kawa

 出典 

 参考文献 

 外部リンク 



 Documentation
 Video of 2014 PyCon talk
Category:LISP