プログラム言語の突然変異、Cyanが素敵すぎ
Cyan, Yet Another New language - takuto_hの日記
Lisp(最小主義/継続/マクロ) + プロトタイプチェーン + 構造化構文 + 中置記法
特徴
- 基本はLispの評価機
- 式ではなくオブジェクトでイメージできる
- プロトタイプチェーン:JavaScriptより簡単にOOPできる
- 構造化構文:中括弧構文とPythonのハイブリッド
- 中置記法:演算子をメソッドとして定義するとこ、Scalaみたい
ないもの
- クラス:擬似的にはあるけど本質的にはない
- コールスタック:構造化構文なのに非スタックマシン
- ライブラリ:Luaだと思えば平気
- 小数:思い切った(w
コード例
def hoge,^(x): x + 1 say hoge(1)
見た目Pythonなのに、実はS式。
よく知らないのではずしているかもしれないけど、Lispに翻訳するとこんな感じ?
(define hoge (lambda (x) (+ x 1))) (say (hoge 1))
開く開く閉じる開く閉じる閉じる... えっと、いま開き何回目だっけ?もっかい最初から、開く開く...
ポールグレアムもグイドも腰抜かす完成度だと思う。すごく綺麗にまとまっているし、特定の言語に影響されすぎていない。で、しかも、設計者はティーンエイジャー。
これ、実務系の次の有力候補がScalaだとしたら、趣味プロの最有力候補だと思います。趣味言語RubyにRails出現、みたいなことが10年経ってから起こったとしても、彼はまだ30才になっていないのか…。