Deutsch English Français Italiano |
<vc39rl$1b1jo$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!3.eu.feeder.erje.net!feeder.erje.net!news.szaf.org!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Randy Brukardt" <randy@rrsoftware.com> Newsgroups: comp.lang.ada Subject: Re: Ichbiah 2022 compiler mode Date: Sat, 14 Sep 2024 01:18:25 -0500 Organization: A noiseless patient Spider Lines: 31 Message-ID: <vc39rl$1b1jo$1@dont-email.me> References: <vbc625$at65$1@dont-email.me> <vbdgs7$hedr$1@dont-email.me><vbdk2t$hj0r$6@dont-email.me> <vbtr9t$327q$1@dont-email.me> <vbvpmt$esm6$7@dont-email.me> Injection-Date: Sat, 14 Sep 2024 08:18:30 +0200 (CEST) Injection-Info: dont-email.me; posting-host="252dd07fce3ba32f52749428b1b0da73"; logging-data="1410680"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/1vYzA54ekUOh0rgRLMCgmS19zsxi16ZE=" Cancel-Lock: sha1:wh635Ey21xqEEwlMVZ4qf4nrjJg= X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Original X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 X-MSMail-Priority: Normal Bytes: 2517 "Lawrence D'Oliveiro" <ldo@nz.invalid> wrote in message news:vbvpmt$esm6$7@dont-email.me... > On Wed, 11 Sep 2024 23:39:27 -0500, Randy Brukardt wrote: > >> "Lawrence D'Oliveiro" <ldo@nz.invalid> wrote in message >> news:vbdk2t$hj0r$6@dont-email.me... >>> On Thu, 5 Sep 2024 19:03:22 -0500, Randy Brukardt wrote: >> ... >>>> (10) Variable-returning functions are introduced. >>> >>> Is this like updater functions in POP-11, or "setf" in Lisp? >> >> No, it is a function that returns a variable, meaning you can assign >> into the function result. > > I think an updater function would be more generally useful. Because some > things you want to update might not (depending on the implementation) live > independently in an explicit variable. And it seems good not to constrain > implementations unnecessarily. Unfortunately, "updater" functions don't work with the Ada model of components, because you can't tell what to do when a component appears or disappears in an assignment. (That's why Ada doesn't allow overloading ":=".) And composition is very important to Ada -- stand-alone objects are pretty rare outside of those for scalar types. I don't think something that only worked with stand-alone objects would be very useful (can't use those with ODTs, for instance).. Randy.