Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!mit-eddie!uw-beaver!milton!khan From: khan@milton.acs.washington.edu (I Wish) Newsgroups: comp.lang.misc Subject: Re: Anyone want to design a language? Summary: macro or "basic" construct, what's the difference? Message-ID: <2077@milton.acs.washington.edu> Date: 22 Feb 90 07:28:18 GMT References: <22569:05:10:24@stealth.acf.nyu.edu> <8475@wpi.wpi.edu> <4489:05:14:19@stealth.acf.nyu.edu> Reply-To: khan@milton.acs.washington.edu (I Wish) Distribution: usa Organization: Barbarian Driving School, University of Washington, Seattle Lines: 22 In article <4489:05:14:19@stealth.acf.nyu.edu> brnstnd@stealth.acf.nyu.edu (Dan Bernstein) writes: >14. Control flow statements, control structures: [ various ] > >[...] Remember that this isn't Ada. Given an >infinite loop ... endloop, if, and break, you don't need to provide >a terminating loop as a basic construct. Define it instead as a standard >macro. Ada's infinite variety of control structures is awful. This may be a nit-picky detail, but what's the difference whether a terminating loop is a "basic construct" or a "standard macro"? If it's "standard," everyone using ALPAL wwill have it, and, I believe, use it. If you're trying to discourage this variety of control structures, it seems you'd want to discourage this sort of macro.... and whether it's actually handled in the preprocessor or the compiler proper is an efficiency-of-implementation detail that could be transparent. (Ideally -- I sure *hope* no one wants to redefine "for" (: ) -- "indecipherable strangers handing out inexplicable humiliation and an unidentified army of horsemen laughing at him in his head ..." -- Douglas Adams Erik Seaberg (khan@milton.u.washington.edu)