From ... From: Erik Naggum Subject: "nested" #- and #+ Date: 1999/02/08 Message-ID: <3127449846486009@naggum.no>#1/1 X-Deja-AN: 442187441 mail-copies-to: never Organization: Naggum Software; +47 8800 8879; http://www.naggum.no Newsgroups: comp.lang.lisp can Common Lisp be easily conditionalized for various systems? a local programmer sent me some code that stood out as particularly ugly to both of us, and I thought "this really can't be it". so it occurred to me that #- and #+ should "nest", in that #-foo bar is like whitespace when (featurep :foo), which seems to imply that #-foo #+zot bar #-zot quux should be skipped entirely when (featurep :foo). if this is valid, then we should be able to write conditionalizations like this: #+allegro (allegro-specific) #-allegro #+cmucl (cmucl-specific) #-cmucl #+lucid (lucid-specific) #-lucid (unknown-system) instead of the maintenance nightmare #+allegro (allegro-specific) #+cmucl (cmucl-specific) #+lucid (lucid-specific) #-(or allegro cmucl lucid) (unknown-system) I read the standard to say that "nesting" should work. is it reasonable? #:Erik -- Y2K conversion simplified: Januark, Februark, March, April, Mak, June, Julk, August, September, October, November, December.