Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!mephisto!prism!tynor From: tynor@prism.gatech.EDU (Steve Tynor) Newsgroups: comp.lang.ada Subject: Re: proposal for Ada preprocessor Message-ID: <4376@hydra.gatech.EDU> Date: 14 Dec 89 15:11:17 GMT References: <3285@cbnewsl.ATT.COM> <7423@hubcap.clemson.edu> Reply-To: tynor@prism.gatech.EDU (Steve Tynor) Organization: Georgia Institute of Technology Lines: 24 In article <7423@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu writes: ... > It seems offhand that the effect of testing whether symbols are > defined or undefined can be automatically accomplished by defining > an enumerated type containing all the symbol names, creating a boolean > array indexed by that enumerated type, and initializing it with the > appropriate values by named association. Then the user would simply > edit the named associations to set desired options to True and others > to False. Perhaps you had more in mind than just checking for "defined"? What about the cases where disabling a feature should prevent 'with'ing a package? (e.g. don't 'with' a DEBUG_TRACE package in a released version) - Your method will prevent calls to the trace procedures, but the DEBUG_TRACE package would still be linked in to the executable (ignoring potential linker optimizations that might recognize that none of that package's code is actually called). =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Never put off until tomorrow what you can avoid altogether. Steve Tynor Georgia Tech Research Institute Artificial Intelligence Branch tynor@prism.gatech.edu