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 ソースを吐く機能を付けないとなー。非常にめんどそうだ。