Sun, 06 Sep 2009

オレオレ言語

最近はオレオレ言語を作って遊んでいます。メモを見ると7/15からやり始めたようです。

FORTH系の後置構文の言語で、同じく後置構文のCatやRaven、Python、Lisp/Schemeをちょっとづつかじったような感じです。

実装にはPythonのPLY.pyを使ってるので、Pythonはかじったというかおんぶに抱っこ状態です。

名前はAlabicaです。コーヒーの名前にしました。

なんで後置構文かっていうと、UNIXのコマンドラインでコマンドをパイプで繋いでどこまでも処理を繋げていける気持ち良さがあるからかな。

どんな風に考えてどうしたかってのを忘れないうちにメモってみます。

>>> 1 2
1 2

左から評価されてスタックに積まれます。

>>> 1 2 + 5 *
15

+や*は評価されるとスタックからWORDを2つ取って演算する関数です。

>>> 1 2 swap dup
2 1 1

swapはスタックからWORDを2つ取って入れ替え、dupはWORDを1つ取ってコピーします。

>>> 1 as var
>>> var
1

邪道かもしれないけどRavenで導入してたWORDへの代入が便利だったので導入してみた。後置構文的には語順が逆のような感じがするけどこの語順が気に入ったのでこのまま採用しました。

ということで、まずはこんな感じ。


Trackback

Comments



Name:


E-mail: (option)


URL: (option)


The Magic Word: please enter the '0730'.


Comment: