民芸的プログラミング 〜ソフトウェア開発日記〜

アクセスカウンタ

zoom RSS そんなにインタープリタを作りたいと言うのなら

<<   作成日時 : 2009/08/24 00:16   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

インタープリタの作り方の本を読んでいて思ったのだが。
インタープリタを作ることが目標で、インタープリタの基本原理だけを勉強したいのなら、Lisp インタープリタがシンプルで、一番目的に適っているはずなのだ。
字句解析はさすがに必要だが、構文解析は、無理しなくても Lisp ならほとんどカッコが解決してくれる。

と思ったら、本当に、そういう記事がネット上で公開されていた。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060922/248738/
「JAVA で作るオリジナル言語」と題して、Lisp インタープリタの作り方がわかりやすく解説されている。
しかも、開発に使う言語が JAVA なので、こちらのほうが、最近の若い人には馴染みやすいのではないだろうか。

ただし、大きな問題がある。
それは、Lisp の馴染みの無さだ。Lisper と呼ばれる人は世の中にはそうはいない。

確かに Lisp は、見た目がカッコだらけで、C だとか JAVA だとかを見慣れた人にとっては、「うぇっ」と言いたくなるようなプログラムになってしまう。
本当の Lisper が書いた Lisp のプログラムは、外部の人にとってはちんぷんかんぷんなテクニックが駆使されていたりするし。

しかし、何も無理に考えなくてもいいのだ。Lisp だって人間の考えたプログラム言語なのだ。
無理にベテランの Lisper らしいプログラムを書こうとする必要はない。
私などが Lisp のプログラムを書くと Lisper には「Lisp は C じゃない」とか言われてしまう。要は使いこなせていないということなのだが、問題がそこ、すなわち Lisp の使いこなしでないのならば、別に構わないではないか。

自作のアプリに簡易なインタープリタを搭載して、処理に柔軟性を持たせたい。そういう目的で Lisp インタープリタを搭載しただけならば、べつにカッコイイ Lisp プログラムを書ける必要はない。
「Lisp は C じゃない」という言葉を裏返せば、「いかにも C プログラマが書いたような Lisp プログラムだって書ける」ということだし、それで処理が動くならいいではないか。

とか言っても、やはりマクロ言語が Lisp ライクというのは、あまり人気が出なさそうで思い悩む今日この頃である。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
そんなにインタープリタを作りたいと言うのなら 民芸的プログラミング 〜ソフトウェア開発日記〜/BIGLOBEウェブリブログ
文字サイズ:       閉じる