S: Kişi nasıl yaratır ve kullanır :keywords
?
Aşağıdaki oyuncak alist'e erişmek için (naif, görünüşte) bir girişim düşünün:
(setf alist '((:key-1 "Key no. 1")
(:key-2 "Key no. 2")))
(assq :key-1 alist) ; => (:key-1 "Key no. 1")
(assq (make-symbol ":key-1") alist) ; => nil
İlk anahtar beklendiği gibi çalışır, ancak ikinci anahtar çalışmaz. Belirgin bir make-keyword
fonksiyon olmadığı sürece , bir anahtar kelime nasıl oluşturulur ve kullanılır?
Özgün motivasyon: Bir dizeyi, put
özellikleri kullanabileceğim bir sembol olan bir arama anahtarına dönüştürmem gerekiyor .
Bu soruyu formüle etme sürecinde, cevabın en azından bir kısmına ayrıldım, ki bu da ayrı olarak gönderiyorum. Benimkinden daha parlak zihinlerin gelişmesini umuyorum.
(eq :foo (read ":foo"))