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のコードは、コンパイル時に両言語のコードをPythonのASTにステップ変換するため、標準ライブラリを含むPythonのライブラリにインポートしたり、ライブラリからHyのコードにアクセスしたりすることが可能である。
コード例
以下はHy言語のドキュメントからの引用である。
関連項目
- Clojure
- Kawa
出典
参考文献
外部リンク
- 公式ウェブサイト
- hy - GitHub
- Documentation
- Video of 2014 PyCon talk




