19
içinde string nesnesini kullanarak string nesnesini kullanarak bir "dictionary" türü oluşturmaya çalışıyorum - yani anahtar olarak bir dizgi içeren karma tablo. Bu mümkün mü yoksa Lisp'de bilge mi? Aşağıdaki AncakCommon Lisp
> (setq table (make-hash-table))
#<HASH-TABLE :TEST EQL size 0/60 #x91AFA46>
> (setf (gethash 1 table) "one")
"one"
> (gethash 1 table)
"one"
değildir::
> (setq table (make-hash-table))
#<HASH-TABLE :TEST EQL size 0/60 #x91AFA0E>
> table
#<HASH-TABLE :TEST EQL size 0/60 #x91AFA0E>
> (setf (gethash "one" table) 1)
1
> (gethash "one" table)
NIL
NIL
Justicle, CLHS bunu bir örnek olarak görüyor. Belli değilse, belgelere bakmak yardımcı olabilir: http://www.lispworks.com/documentation/HyperSpec/Body/f_mk_has.htm –
Büyük/küçük harfe duyarsız dizgisi karmaşası istiyorsanız EQUALP kullanın. – skypher
Teşekkürler millet. Dokümanları kontrol ettim, ama benimle ilgili herhangi bir şeyi canlandırmak için o bölümün birçok eşitlik fonksiyonuna yeterince dikkat etmedim. "Sadece ihtiyacım olan şeyi yapmalıyım" varsayımı altındaydım (yanlış). – Justicle