From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: ** X-Spam-Status: No, score=2.1 required=5.0 tests=BAYES_05,INVALID_DATE, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!spool.mu.edu!uunet!mcsun!cernvax!chx400!chx400!bernina!neptune!c!mneerach From: mneerach@iiic.ethz.ch (Matthias Ulrich Neeracher) Newsgroups: comp.lang.ada Subject: Re: procedural variables Message-ID: <24590@neptune.inf.ethz.ch> Date: 12 Feb 91 12:32:29 GMT References: <9102110959.aa23851@PARIS.ICS.UCI.EDU> <662@esosun.UUCP> Sender: news@neptune.inf.ethz.ch Reply-To: mneerach@iiic.ethz.ch Organization: Departement Informatik, ETH, Zurich List-Id: In article <662@esosun.UUCP>, howard@esosun.css.gov (Howard Turner) writes: <> jduarte@ternes.ICS.UCI.EDU (J o s e D u a r t e ! ! !) writes: <> <> Since Ada does not provide for procedural variables, how <> do you/your associates handle the need for having a procedure or <> a task perform different duties depending on run-time circumstances? >Two methods come to mind immediately. Since I am involved developing >an Ada/Xt and Ada/widget_set I've had to solve this "problem". > >The two methods are > >1) use tasks. The prototype code for this is included at the end > of this posting. This code has been compiled linked and run > under several different hardware/compiler combinations and has > always run correctly. > >2) Call it from C. Could anybody explain what the rationale for not including procedural variables in Ada is (I have heard it has been discussed and dismissed again in the past few years) ? The only reason against it that I have seen is that procedural variables might put an additional cost to exception handling. Can anybody give a better explanation ? Matthias -- Matthias Neeracher mneerach@iiic.ethz.ch "These days, though, you have to be pretty technical before you can even aspire to crudeness." -- William Gibson, _Johnny Mnemonic_