> * Faré <snu...@tznvy.pbz> [2017-04-01 02:33:38 -0400]: > > Symbols work fine. It's just that they are not *canonical*; so it's > not obviously clear that underneath, ASDF them will reduce them to a > lower-case string; or that :SRc srC and "src" are the same thing. The > consing and interning saved by using strings is probably minor in > comparison.
My intuition is exactly the opposite. Since the standard Common Lisp reader is case-converting, when I see symbols, I assume that FOO, Foo and foo are the same. With strings I assume the opposite - "FOO", "Foo" and "foo" are different. I don't like name space pollution though, so, when I want case-insensitive strings, I use uninterned symbols. #:FOO, #:Foo, and :foo designate the same strings and they have sufficiently distinct syntax to be properly highlighted by Emacs and to convey the intent quite clearly. Thanks. -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://www.memritv.org http://camera.org http://www.dhimmitude.org Legends are time-tested rumors.