- リストでない形で渡すとそれを値評価する。数値はそのやり方がOK、文字列は""で囲む
> 123
123
> "Gauss"
"Gauss"
- リストを与えよう
- 空リストはエラー(空リストはLISPの定義的にはnilという意味なのだけれど…)
> ()
. #%app: missing procedure expression
probably originally (), which is an illegal empty application in: (#%app)
-
- 要素を1つ入れるとき、その要素は「特別な要素〜第1の要素」なので、きちんと評価される場合とそうでない場合とがある
> (7)
. . application: not a procedure
expected a procedure that can be applied to arguments
given: 7
arguments...: [none]
> ("apple")
. . application: not a procedure
expected a procedure that can be applied to arguments
given: "apple"
arguments...: [none]
> (+)
0
> (-)
. . -: arity mismatch
the expected number of arguments does not match the given number
expected: at least 1
given: 0
> (*)
1
> (+ 5)
5
> (- 5)
-5
> (* 5)
5
> (/ 5)
1/5
> (+ 2 5)
7
> (- 2 5)
-3
> (* 2 5)
10
> (/ 2 5)
2/5
> (+ (+ (+ 1 2) 3) 4)
10
> (+ 1 2 3 4)
10
> (- (+ (* (/ 1 2) 3) 4) 5)
1/2
> (sqrt 3)
1.7320508075688772
> (log 2)
0.6931471805599453
> (log (exp (exp 0)))
1.0
> (-
(+
(*
(/ 1 2)
3)
4)
5)
1/2