2012-02-19 8 views
0

どのように私は確認することができ、私はこのコードを試してみましたが、私はJschemeまたはlisp !!リストの最初の要素がいくつかの文字</p> <p>に等しい場合と比較文字

(= (car lis) 'f) 

任意のアイデアを動作しませんでしたか? Common Lispでは

+0

Clojure '(=(最初のリスト)\ f)' – Bill

+0

「文字」を実際に意味しますか、実際には「記号」を意味しますか?彼らは典型的に同じものではありません。 '' f''は ''シンボル 'f''ですが、'#\ f'は ''文字 'f''(Common Lispでは少なくとも)です。一般的には、それらを比較、保存、対処する必要があります。 – Inaimathi

答えて

2

汎用比較演算子がequalの異なる変種がある一方で、あなたは、Lispの=

(eql (car list) #\f) 
+0

私は、質問者が実際には「文字」を意味するのではなく「記号」を意味すると考えます。しかし、どちらの場合も、適切な等価コンパレータはありません。 – Vatine

+0

'eq'は文字としては有効に定義されていません。代わりに 'eql'を使用してください。 –

4

は数値比較のために使用されている平等のためeq使用(CLで4つのものがあります。eqポインタのために比較のために、のequalのようなものである。

関連する問題