Lispの記法
・前置記法
1 + 2
→ 
 (+ 1 2)
つまり、関数(ここでは和演算)を最初に宣言して、引数を渡す。これはf(x)と記述するのと同じである。
・defun
means define-function
例)
フィボナッチ数計算:
> (defun fib(n)
>   (if (<= n 1)
>     1
>     (+ (fib (- n 1)) (fib(- n 2)))
>   )
> )
> (fib 5)
 8
> (fib 21)
 17711
Lispの評価と特殊形式quote、function
・quote
関数を評価せずにそのままかえす
例)
> (quote (1 2 3))
 (1 2 3)
・function
シンボルの関数をかえす特殊関数
略記 #'
例)
> (function +)
#<SYSTEM-FUNCTION +>
0 件のコメント:
コメントを投稿