From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!newsfeed1.bredband.com!bredband!uio.no!nntp.uio.no!ifi.uio.no!not-for-mail From: Erik Naggum Newsgroups: comp.lang.lisp Subject: Re: Why learn Lisp Date: 27 Aug 2002 20:09:38 +0000 Organization: Naggum Software, Oslo, Norway Lines: 32 Message-ID: <3239467778955852@naggum.no> References: <86lm6s91b5.fsf@gondolin.local.net> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: maud.ifi.uio.no 1030478980 25939 129.240.64.16 (27 Aug 2002 20:09:40 GMT) X-Complaints-To: abuse@ifi.uio.no NNTP-Posting-Date: 27 Aug 2002 20:09:40 GMT Mail-Copies-To: never User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: archiver1.google.com comp.lang.lisp:38958 * Adam Warner | Scratch that. A large and more satisfying simplification would be the | original text being associated with any individual symbol name the first | time it is met by the reader (perhaps until the associated text is | explicitly destroyed). What would happen to (defstruct foo ...)? Would you have MAKE-foo or make-foo? I have spent many hours working on various ways to make a case-preserving, lower-case Common Lisp work according to the standard, but I find myself stumped by macros that generate symbols by "concatenating" input symbols with symbols of its own making. I have come to believe that this should be avoided at all cost, including writing out the symbols created by defstruct in full. You see, what I want is for `intern´ and `symbol-name´ to use lower-case symbol names when I throw a switch, but if I also want a case- preserving reader, what comes out of defstruct is probably MAKE-foo. To make this work, macros that call intern need to capture the state of the flag that modifies how `intern´ and friends work so that they would do the right thing as the macro writer intended when it was compiled. This is pretty messy, so I have not taken then idea any further. | The idea would seem to require the string information for each unique | symbol to be retained forever (unless explicitly destroyed). Why do you think this is not how things work today? -- Erik Naggum, Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.