From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: 'Protected' abstract subprograms
Date: Fri, 17 Jan 2014 17:23:55 -0600
Date: 2014-01-17T17:23:55-06:00 [thread overview]
Message-ID: <lbce2b$cqm$1@loke.gir.dk> (raw)
In-Reply-To: wccvbxje5sn.fsf@shell01.TheWorld.com
"Robert A Duff" <bobduff@shell01.TheWorld.com> wrote in message
news:wccvbxje5sn.fsf@shell01.TheWorld.com...
...
> The freezing rules make my brain hurt. Even though I had a hand in
> writing them! ;-)
>
> A better-designed language would not have anything like freezing rules.
That's a facinating assertion from the guy that's responsible for most the
AARM notes describing the freezing rules. Especially as you guys pretty much
redesigned that area in Ada 95 -- you essentially created a whole new
language design for it. It makes me wonder how a language could be better
designed and not "have anything like freezing rules".
After all, a compiler has to have a known representation for types and
objects at some point, certainly before code generation. If one is going to
support some sort of separate compilation (especially *safe* separate
compilation), freezing rules or something like them seems manditory. [There
is an argument to be made that a truly modern language doesn't need to
support separate compilation at the language level, given that it is now
practical to delay compilation until bind time. But that seems awfully
radical and would seem to put an upper limit on the sizes of programs that
could be written in the language. I don't think that's what you meant.]
Ada's freezing rules are far more detailed than absolutely necessary, but
the obvious way to get simplify them would be to require that all types are
declared before all objects (a-la Pascal) -- and we have evidence that's too
inflexible. There don't seem to be any obvious way to simplify them if
objects can be declared anywhere.
So I have to wonder what sort of "well-designed language" you have in mind.
Randy.
next prev parent reply other threads:[~2014-01-17 23:23 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-10 22:00 'Protected' abstract subprograms sbelmont700
2014-01-10 22:30 ` Randy Brukardt
2014-01-11 16:12 ` sbelmont700
2014-01-14 3:45 ` Randy Brukardt
2014-01-14 9:05 ` Dmitry A. Kazakov
2014-01-15 0:36 ` Randy Brukardt
2014-01-15 9:17 ` Dmitry A. Kazakov
2014-01-15 14:11 ` Robert A Duff
2014-01-15 15:40 ` adambeneschan
2014-01-15 21:21 ` Robert A Duff
2014-01-15 23:10 ` Randy Brukardt
2014-01-16 0:51 ` Robert A Duff
2014-01-16 10:43 ` AdaMagica
2014-01-16 16:32 ` adambeneschan
2014-01-17 1:49 ` Robert A Duff
2014-01-17 23:23 ` Randy Brukardt [this message]
2014-01-19 21:07 ` Robert A Duff
2014-01-20 8:40 ` Dmitry A. Kazakov
2014-01-21 14:37 ` Robert A Duff
2014-01-22 8:27 ` Dmitry A. Kazakov
2014-01-21 1:21 ` Randy Brukardt
2014-01-21 14:35 ` Robert A Duff
2014-01-15 23:17 ` Randy Brukardt
2014-01-16 8:52 ` Dmitry A. Kazakov
2014-01-11 8:41 ` J-P. Rosen
2014-01-11 8:59 ` Dmitry A. Kazakov
2014-01-11 13:42 ` Niklas Holsti
2014-01-11 19:35 ` Dmitry A. Kazakov
2014-01-12 9:19 ` Niklas Holsti
2014-01-12 10:22 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox