next up previous
Next: 1.2 evalの手続き Up: 1 インタプリタの構造 Scheme.java Previous: 1 インタプリタの構造 Scheme.java

1.1 Scheme.mainメソッド

Schemeクラスのmainメソッドは Scheme.readEvalWriteLoopメソッドを実行します. これは, promptを出し,標準入力からread()し,evalし, writeをします. try,catch構文は,try ブロック1 catch(例外)ブロック2という 形で,ブロック1を実行している最中に,例外がおこると, ブロック2を実行します.

  try {
    output.print("> "); output.flush();
    if (input.isEOF(x = input.read())) return;
    write(eval(x), output, true); 
    output.println(); output.flush();
  } catch (RuntimeException e) { ; }
RuntimeExceptionが起こっても無視するという 記述になっています. instanceofという演算子は,変数 instanceof クラスという ように書き,その変数がクラスのインスタンスであればtrue を返し,そうでなければfalseを返します.

generated through LaTeX2HTML. M.Inaba 平成18年5月6日