S式でPythonを書きたいので、Hyを試してみる

突然ですが、普段Pythonを書きつつも「S式が書きたい…」という方も少なくないと思います。私もそのうちの一人です。さて、Hyという言語があることを知りました。

github.com

READMEには、Hyに乗り自由となった青年の画像があります。 https://camo.githubusercontent.com/7e07a78abec9b82266ebf8075036cb63ad7fc691/68747470733a2f2f692e696d6775722e636f6d2f5162504d58544e2e706e67

Lisp -> Python AST みたいな感じっぽいですね。

ちょっと試してみるだけなら、 https://try-hy.appspot.com/ が良いかもしれません。

もう眠いので、本当に少しだけ試してみることにします。

Python

1/2
# => 0.5
x = 1
x
# => 1 

Hy

1/2
;; => Fraction(1, 2)
(/ 1 2)
;; => 0.5
(setv x 1)
x
;; => 1L
(print (setv x 1))
;; => None

1/2がFractionのリテラルなのはちょっと気をつけたいですね。

Numba・Cythonとの組み合わせとか、Jupyter Notebookで使いたいとか、これから試してみようと思います。