comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Adacore joins with Ferrous Systems to support Rust
Date: Thu, 3 Feb 2022 21:20:08 -0600	[thread overview]
Message-ID: <sti619$p1k$1@franka.jacob-sparre.dk> (raw)
In-Reply-To: stgj3j$12g8$1@gioia.aioe.org

"Luke A. Guest" <laguest@archeia.com> wrote in message 
news:stgj3j$12g8$1@gioia.aioe.org...
> On 03/02/2022 11:30, Simon Wright wrote:
>> "Luke A. Guest" <laguest@archeia.com> writes:
>>
>>> At uni, we didn't even touch on tagged types, but used controlled
>>> types
>>
>> Of course controlled types are implemented as tagged types. ISTR Dmitry
>
> We had a book with a reading guide. We weren't shown the specs showing the 
> type of controlled/limited_controlled. So, when you don't have that 
> information and only know that you can derive from it and then implement 2 
> or 3 subprograms, you don't need to know about OOP in Ada.
>
> Just like we didn't touch generic packages until much later in the year, 
> generic subprograms, yeah, because u_d was required early on.
>
>> objecting to this, I think he was right (philosophically; I've no idea
>> about the practicality of alternate approaches).
>
> How else would you do controlled types?

Ada 9x originally had a bunch of magic attributes (similar to streaming). It 
was very complex and got dumped in the dustbin during "scope reduction". 
Later on, some of us were bemoaning that a critical feature (finalization) 
had gotten lost in Ada 9x, and Tucker came up with the idea to build it on 
top of tagged types as a massive simplification (at the loss of a bit of 
power). People often complain that Ada finalization is complex, and it is, 
except all of the alternatives are a lot more complex. :-)

                   Randy.


  reply	other threads:[~2022-02-04  3:20 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-02  8:57 Adacore joins with Ferrous Systems to support Rust Paul Rubin
2022-02-02 13:04 ` Luke A. Guest
2022-02-02 15:29   ` Marius Amado-Alves
2022-02-02 16:36     ` Luke A. Guest
2022-02-04 17:51       ` Stephen Leake
2022-04-18 16:01       ` Rene
2022-02-02 20:07     ` G.B.
2022-02-03 23:29     ` John McCabe
2022-02-11 17:40     ` amo...@unizar.es
2022-02-11 19:24       ` Luke A. Guest
2022-02-12 17:34         ` Alejandro R. Mosteo
2022-02-12  5:22       ` John Perry
2022-02-12 10:08         ` Marius Amado-Alves
2022-02-12 18:24         ` Alejandro R. Mosteo
2022-02-13  8:10           ` J-P. Rosen
2022-02-14 23:25           ` Randy Brukardt
2022-02-15  4:29             ` Paul Rubin
2022-02-12 23:59         ` John Perry
2022-02-18 13:24     ` Kevin Chadwick
2022-02-02 20:06   ` Paul Rubin
2022-02-03  1:34     ` Luke A. Guest
2022-02-03  2:20       ` Paul Rubin
2022-02-03  2:52         ` Luke A. Guest
2022-02-03  4:22           ` Paul Rubin
2022-02-03  9:54             ` Björn Lundin
2022-02-04  3:38             ` Randy Brukardt
2022-02-04  5:19               ` Paul Rubin
2022-02-03 11:30           ` Simon Wright
2022-02-03 12:51             ` Luke A. Guest
2022-02-04  3:20               ` Randy Brukardt [this message]
2022-02-04 10:28                 ` Luke A. Guest
2022-02-04 17:51                   ` Andreas ZEURCHER
2022-02-05  4:31                   ` Randy Brukardt
2022-02-02 16:19 ` Stephen Leake
2022-02-02 18:48 ` Gautier write-only address
2022-02-02 20:03   ` Paul Rubin
2022-02-02 20:45     ` Dennis Lee Bieber
2022-02-12  4:42 ` 25.BZ943
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox