From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-0.9 required=3.0 tests=BAYES_00,FROM_ADDR_WS autolearn=no autolearn_force=no version=3.4.5-pre1 Date: 5 May 93 11:40:18 GMT From: cis.ohio-state.edu!news.sei.cmu.edu!firth@ucbvax.Berkeley.EDU (Robert Fi rth) Subject: Re: Passing procedures as parameters to procedures. Message-ID: <1993May5.074018.6554@sei.cmu.edu> List-Id: In article <1993May4.183607@di.epfl.ch> Magnus.Kempe@di.epfl.ch (Magnus Kempe) writes: >In article <1993May4.094549.13420@sei.cmu.edu>, firth@sei.cmu.edu (Robert Firt h) writes: >: [...] trying to replicate something like the Algol-60 >: >: real procedure Integrate ( real procedure F; real lwb, upb ); >: >: and put it in a library package somewhere. You can't do it. > >Use generics (for simple cases--99.99%): Well, yes, you can use generics. Unfortunately, with most Ada implementations, what you get is, in effect, a type-checked macroexpansion of the code body. Apart from its bulk, this has the problem that any change to the implementation of the Integrate routine requires every program that uses it to be recompiled. In my opinion, this is completely contrary to the concept of a subroutine library as we have understood it for over thirty years, and a maintenance headache any reasonable person would want to avoid.