• 作成:

単純なLispを実装した話

  • 2016年02月に単純なLispを実装した
  • 面白みはない

背景

48時間でSchemeを書こう - Wikibooksを見たら案外簡単そうだと思って手を動かしてみたようだ.

継続とレキシカルスコープの実装が難しく, やらねばならない課題などがあった(これは課題でも何でもない)ので, これ以上実装は進められなかった.

かと言って教材をそのまま丸コピペするのも面白くなかった.

フィボナッチ数を計算してそれで満足した.

ソースコード

Parsecを使うのは初めてだった. それどころか, 抽象構文木を作るようなテキスト解析処理を書いた事自体当時初めてだったので, コードの拙さが伝わってくる. 例えばtryを乱用している.

感想

もうちょっとオリジナリティのある言語を作ったほうが教材と被らなくて面白みがあって良さそうだ.

まだ単純な言語とネタ言語しか作ったことがないので, 今度はもうちょっと応用的なものを書いてみたい.

しかしParsecやHaskellの学習にはなった. 次のネタ言語ではApplicativeやStateモナドを使っている.