Re: compute-system-path needs a call to string to accept keywords for module-name.
Marco Antoniotti <[email protected]> Thu, 12 Feb 2004 10:29:56 -0500
| Newsgroups | gmane.lisp.clocc.general |
|---|---|
| Message-ID | <[email protected]> |
On Wednesday, Feb 11, 2004, at 23:55 America/New_York, John Foderaro wrote: > > I hate to harp on this but I have to see a full proposal or else > I'll ask simple questions like this: Harping is good. I do that all the time :) > > What is the symbol-name of the symbol common-lisp:car ? > > Is it > a. "car" > b. "CAR" > c. a or b depending on *print-case* > d. a or b depending on *package-symbol-name-case* > e. none of the above You can have it both ways, (a) or (b) (symbol-name 'cl:car) ==> "CAR" or (symbol-name 'cl:car) ==> "car" What you want is (find-symbol "cAr") ==> #S(SYMBOL :NAME <"CAR" or "car" or "Car" or ... > :package "CL") I see you problem, which I missed in my previous response, with the '(Help me get a car), but I still think that my proposal would have had less back-portability problems than your modern mode. My proposal is not perfect, but it gets you the control you want when dealing with *new* code over which you want control. In the case of '(Help me get a car) the printer would print (most likely) (Help me get a car) with all CL symbols already downcase, or (Help me GET a CAR) with the package symbol-case-name (note: no dynamic *package-symbol-name-case* available) set to the :PRESERVE and *PRINT-CASE* set to :PRESERVE, and symbols in CL being uppercase. (help me get a car) with *PRINT-CASE* set to :DOWNCASE. So, you see, the key is how you want your CL package to look. With my proposal you can have symbols in CL lower case and get things as you expect. You cannot solve all problems, but I am still convinced I was on the right track to patch things up. ... and I still am wondering what were you guys thinking while writing the standard (you were there, weren't you?) :) Cheers marco -- Marco Antoniotti http://bioinformatics.nyu.edu NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488 715 Broadway 10th FL fax. +1 - 212 - 998 3484 New York, NY, 10003, U.S.A. ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click