etolisp進捗(3)
怠けていて細かい関数ばかり手をつけている。さっさとマクロを実装して,あとはLispで書いてしまうというのが,手っ取り早いように思えてきた。
その場合,C++で実装するのに較べると,lambdaを介するために少し動作が遅くなるのと,読み込みのため起動が少し遅くなる恐れがあるが,後者はバイトコンパイルをサポートしてバイナリで読めば何とかなるだろう。
前者についてはアロケータのチューニングとかで少しくらい頑張れるだろうし,もともと「etolispの真骨頂は少なくとも速度にはない」と思っているので。今後の予定は
- ループの実装
- 末尾再帰をループに変換(lambda)
- マクロの実装
と,こんな感じか。マクロを実装する前にはparserをもう少し改善しないとな。