私のコードを見てみましょう
コード 1:
(eqv? 'lambda 'quote)
戻る#f
コード 2:
(case 'lambda ('quote "equal") (else "not equal"))
戻り"not equal"
ますが警告を生成します;;; <stdin>:17:0: warning: duplicate datum quote in clause ((quote quote) "equal") of case expression (case (quote lambda) ((quote quote) "equal") (else "not equal"))
Code3:奇妙な結果
(case 'quote ('lambda "equal"))
"equal"
警告なしに戻る
を使用してコードを解釈しguile (GNU Guile) 2.0.11
ました。そして、ここにgnucase
の構文の説明があります
この評価の結果は、eqv? を使用してすべてのデータムと比較されます。