From: Rolf W. <rol...@il...> - 2004-11-22 16:47:00
|
Hi, I have installed Matlisp (great work) and looked a little bit into the sources. I found many instances of "#+nil ..." and wonder what this is good for. Is it possible to configure the build process by adding :nil to *features*? Regards Rolf Wester |
From: Marco A. <ma...@cs...> - 2004-11-22 17:16:33
|
This is just a conventional way of doing what you'd do in C/C++ with #if 0 blah blah bla #endif Do not add NIL to the features. When you see #+nil it usually means that the code is dead and left around for documentation (grin) purposes. Cheers Marco On Nov 22, 2004, at 11:44 AM, Rolf Wester wrote: > Hi, > > I have installed Matlisp (great work) and looked a little bit into the > sources. > I found many instances of "#+nil ..." and wonder what this is good > for. Is it possible > to configure the build process by adding :nil to *features*? > > Regards > > Rolf Wester > > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real > users. > Discover which products truly live up to the hype. Start reading now. > http://productguide.itmanagersjournal.com/ > _______________________________________________ > Matlisp-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matlisp-users > -- 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. |
From: Sam S. <sd...@gn...> - 2004-11-22 17:32:00
|
> * Marco Antoniotti <zn...@pf...h.rqh> [2004-11-22 12:16:18 -0500]: > > This is just a conventional way of doing what you'd do in C/C++ with > > #if 0 > blah blah bla > #endif > > Do not add NIL to the features. When you see #+nil it usually means > that the code is dead and left around for documentation (grin) purposes. "#+nil" is broken by design. use "#+(or)" instead. -- Sam Steingold (http://www.podval.org/~sds) running w2k <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.honestreporting.com> What garlic is to food, insanity is to art. |
From: Nicolas N. <Nic...@iw...> - 2004-11-22 18:30:39
|
Sam Steingold <sd...@gn...> writes: >> * Marco Antoniotti <zn...@pf...h.rqh> [2004-11-22 12:16:18 -0500]: >> >> This is just a conventional way of doing what you'd do in C/C++ with >> >> #if 0 >> blah blah bla >> #endif >> >> Do not add NIL to the features. When you see #+nil it usually means >> that the code is dead and left around for documentation (grin) purposes. > > "#+nil" is broken by design. > use "#+(or)" instead. Sadly, it is one character more to type... Citing Dan Barlow from asdf.lisp: #+nil (error "The author of this file habitually uses #+nil to comment out forms. But don't worry, it was unlikely to work in the New Implementation of Lisp anyway") Nicolas:-) |
From: Sam S. <sd...@gn...> - 2004-11-22 20:12:47
|
> * Nicolas Neuss <Avpbynf.Arhff@vje.hav-urvqryoret.qr> [2004-11-22 19:28:39 +0100]: > > Sam Steingold <sd...@gn...> writes: > >>> * Marco Antoniotti <zn...@pf...h.rqh> [2004-11-22 12:16:18 -0500]: >>> >>> This is just a conventional way of doing what you'd do in C/C++ with >>> >>> #if 0 >>> blah blah bla >>> #endif note that it's #if 0 not #ifdef DISABLED because it is possible someone will process the file with "gcc -DDISABLED" >>> Do not add NIL to the features. When you see #+nil it usually means >>> that the code is dead and left around for documentation (grin) purposes. >> >> "#+nil" is broken by design. >> use "#+(or)" instead. > > Sadly, it is one character more to type... no, in Emacs, Shift-9 inserts both the opening and the closing paren. (so, yes, you do have to hit an extra button, and to consume an extra 8 bits of your preciously scarce disk space, but that is not a big price to pay for correctness.) > Citing Dan Barlow from asdf.lisp: with all due respect to everyone involved, we all sometimes write lousy code (at least _I_ do, and that makes me think that others sometimes might too), so the fact that Dan Barlow does it, does not prove that the trick is valid. > #+nil (error "The author of this file habitually uses #+nil to comment out > forms. But don't worry, it was unlikely to work in the New Implementation > of Lisp anyway") if your user uses this #+nil trick and then adds NIL to *features* just to enable some code, you will have a lot of fun explaining to him why matlisp is suddenly broken. plain and simply, "#+nil" is a source code bug (unless you _do_ support the New Implementation of Lisp). -- Sam Steingold (http://www.podval.org/~sds) running w2k <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.honestreporting.com> If abortion is murder, then oral sex is cannibalism. |
From: Raymond T. <ray...@er...> - 2004-11-22 22:44:36
|
>>>>> "Sam" == Sam Steingold <sd...@gn...> writes: Sam> with all due respect to everyone involved, we all sometimes write lousy Sam> code (at least _I_ do, and that makes me think that others sometimes Sam> might too), so the fact that Dan Barlow does it, does not prove that the Sam> trick is valid. >> #+nil (error "The author of this file habitually uses #+nil to comment out >> forms. But don't worry, it was unlikely to work in the New Implementation >> of Lisp anyway") Sam> if your user uses this #+nil trick and then adds NIL to Sam> *features* just to enable some code, you will have a lot of fun Sam> explaining to him why matlisp is suddenly broken. Someone randomly adding stuff to *features* deserves what he gets. :-) Sam> plain and simply, "#+nil" is a source code bug Sam> (unless you _do_ support the New Implementation of Lisp). Since I can never remember if it should be (or) or (and), the probablility of me getting it wrong is much higher then if I use #+nil. (Although when I do remember, I do try to use (or) or (and) as appropriate.) Besides, maybe nil means Not-Implemented-Locally? Or was that Now-Implemented-Locally? :-) Ray |
From: Sam S. <sd...@gn...> - 2004-11-22 23:04:07
|
> * Raymond Toy <enlzbaq.gbl@revpffba.pbz> [2004-11-22 17:44:23 -0500]: > > Someone randomly adding stuff to *features* deserves what he gets. :-) he does, yes. and you also deserve getting his (misdirected!) wrath too. :-) > Sam> plain and simply, "#+nil" is a source code bug > Sam> (unless you _do_ support the New Implementation of Lisp). > > Since I can never remember if it should be (or) or (and), just hit C-e (or C-j) after the closing paren: (or) nil (and) t -- Sam Steingold (http://www.podval.org/~sds) running w2k <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.honestreporting.com> Only a fool has no doubts. |
From: Raymond T. <ray...@er...> - 2004-11-23 14:27:05
|
>>>>> "Sam" == Sam Steingold <sd...@gn...> writes: >> * Raymond Toy <enlzbaq.gbl@revpffba.pbz> [2004-11-22 17:44:23 -0500]: >> Since I can never remember if it should be (or) or (and), Sam> just hit C-e (or C-j) after the closing paren: Sam> (or) Sam> nil Sam> (and) Sam> t Actually, with slime's reader-conditional highlighting, I don't even have to do that. It will be highlighted a certain way if the conditional doesn't hold. Of course, this only works if the conditional is applicable to the lisp that is being run; sometimes, that's not true. Ray |