eval1
関数とを書きますapply1
。
eval1
連想リスト (キーはSymbolで、値はNum ) と算術式を使用して、変数名を値に一致させます。
apply1
記号 ('+ または ')、式のリスト、連想リストを消費し、記号で指定された関数をリスト内の式に適用した結果の数値を計算します。
例:
(check-expect (eval1 '((x 2) (y 3) (z 4)) '(+ x (* y 2))) 8)
(check-expect (apply1 '* '(a (+ 3 b)) '((a 2) (b 1))) 8)
PS:相互再帰的である必要がありますeval1
。apply1