eval と REPL(対話型評価環境)を追加

eval と REPL(対話型評価環境)を追加しました。(trunk のコードで試せます)

mosh>(define (add2 n) (+ n 2))
#<clsoure>
mosh>(add2 5)  
7


現時点では eval の第2引数は無視されます。
また REPL は Scheme のコードで実装されています。

(define (REPL . x)
  (define (rec)
    (display "mosh>")
    (print (eval (read (current-input-port)) '()))
    (rec))
  (rec))


REPLは Read-Eval-Print-Loop の略ですが本当にその通りの実装になっていますね。
まだスタックトレースの実装が甘いらしくたまに落ちます。