Scheme というか Lisp インタプリタ

作ってた。前に作ったやつは入出力ができないという悲しい作りだったんだけど、今回のやつはちゃんと入出力ができますよ。ちょっと前にもめてた数値は、とりあえず整数型だけに限定することで対応してます。そのうちなんとかしなきゃね。

それと、lambda は動いたけど define はまだ作ってないのでそこが課題かな。前のやつも define 周りで挫折した気がするので。

% cat hello.lisp
(print "HELLO PROGRAM")
(display "What's your name? > ")
((lambda (name)
   (print (string-append "Hello! " name "!")))
 (getLine))
% ./lisp run hello.lisp
HELLO PROGRAM
What's your name? > shimo
Hello! shimo!
%

勉強会の宿題はコンパイラを作れってことだったので、C ソースを吐く機能を付けないとなー。非常にめんどそうだ。