面白そうなプロジェクトを見つけたので、共有してみます。
Liyad というオープンソースプロダクトなんですが、この Liyad は、JavaScript で作られた他の Lisp 方言とは一味違い、DSL としての側面を強く押し出しています。
JavaScript で書かれているため、npm でインストールできます。
REPL で試すことも出来、以下のようにすることでインストールができます。
$ npm i -g liyad-cli
ちょっと使ってみましょう。
$ liyad
liyad 0.0.52 (CLI 0.0.47) (REPL)
Type ^C to exit.
>>> (+ 1 2 3 4 5)
15
>>> ($list 1 2 3)
[ 1, 2, 3 ]
>>> (# (foo "a")
... (bar 10)
... (baz) )
{ foo: 'a', bar: 10, baz: true }
まあ、こんな感じで、書き方は特殊なものがありますが、読み方は Lisp に慣れた人であれば読めそうな雰囲気があります。今後言語仕様リファレンスが充実したらいいなあと思いました。
この Liyad の中でも特に面白そうだったのが、LSX という DSL です。LSX は Alternative JSX notation using Lisp の略だそうで、JSX を置き換えるものとなっています。JSX に慣れた人でも読み解くのは難しそうですが、S 式でテンプレートを書けるということで、JSX にはない違った可能性を秘めているかもしれません。
Liyad は、まだバージョン 0.0.52 ですが、今後どんな風に育っていくか楽しみに思い、共有しました。
ISC ライセンスにて以下のリポジトリにて公開されています。
ARTICLES
AUTHOR

原 一浩
カンソクインダストリーズ代表 / グレーティブ合同会社代表
1998年に独立し、同年、ウェブデザイン専門のメールメディア DesignWedgeの発行を開始。Webデザイン業の傍ら、海外のWebデザインに関する情報発信を行う。
雑誌への寄稿多数。主な著書に『はじめてのフロントエンド開発』『プロセスオブウェブデザイン』、『Play framework徹底入門』、『ウェブデザインコーディネートカタログ』など。自社製のWebデザインのクロール&キャプチャシステムvaqumをベースに、様々なリサーチを行っている。Web 検定プロジェクトメンバー。