ファイヤープロジェクト
式と評価
2003-07-20T15:13+09:00   matsu
式の記述方法とその評価.
1 + 1
おなじみの式だが,これは中置記法で記述されている.二つの引数をとるオペレータ+が二つの引数の真中にあるから中置である.同じ式をLispでは
(+ 1 1)
と書く.これは前置記法である.オペレータが引数の前に来るから前置である.前置にすることによって,
1 + 1 + 1
(+ 1 1 1)
なんて書くこともできる.オペレータの引数の数を三つとか四つとかいろんな数にできる.
Lispでの式の評価は以下のように行なわれる.
  • 引数を左から右に評価する.
  • 評価した結果をオペレータに渡す.
例えば
(+ 1 (+ 2 3) (+ 4 5))
では,引数である1,(+ 2 3),(+ 4 5)を順に評価して1,5,9をオペレータ+に渡す.
オペレータの種類は以下の三つである.
  • 関数
  • マクロ
  • 特殊オペレータ
Lispのオペレータの大部分は関数である.また,特殊オペレータは先述の式の評価ルールに従わず,別の評価ルールを持つ.
matsu(C)
Since 2002
Mail to matsu