comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Augusta: An open source Ada 2012 compiler (someday?)
Date: Mon, 24 Mar 2014 16:21:20 -0500
Date: 2014-03-24T16:21:20-05:00	[thread overview]
Message-ID: <lgq7kg$kfc$1@loke.gir.dk> (raw)
In-Reply-To: lgopof$unl$1@loke.gir.dk

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4214 bytes --]

"J Kimball" <spam@example.com> wrote in message 
news:lgopof$unl$1@loke.gir.dk...
> On 03/20/2014 06:15 PM, Randy Brukardt wrote:
>> "J-P. Rosen" <rosen@adalog.fr> wrote in message
>> news:lgeh3m$gqq$1@dont-email.me...
>>> Le 20/03/2014 11:23, Lucretia a écrit :
>>>>> I am not as naive as I probably sound. I fully understand that such a
>>>>>> project is massive and not likely to actually ever be completed.
>>>> As long as you don't expect all the annexes, I don't see why not.
>>>>
>>> All those who have been involved in an Ada compiler will tell you that
>>> it is a lot more difficult than it appears, unless you stick to the
>>> Pascal subset and don't care for validation.
>>>
>>> In the early days of Ada, we have seen compilers announcing proudly that
>>> they passed 95% of the validation and that delivery was expected in a
>>> few weeks - they never succeeded to pass the remaining 5%.
>>>
>>> For example, and as a test, make sure you are able to understand the
>>> implications of 4.3.3 (a nightmare for code generation), or 13.14, or
>>> 3.10.2(3/2)...
>>
>> Heck, we (the ARG) aren't quite sure how you implement accessibility 
>> checks
>> for Ada 2005 and Ada 2012 (see AI12-0016-1 for some thinking); you could
>> waste a lot of time trying to figure that out. And like J-P says, a 95%
>> solution isn't good for much -- the real solution is 95% different. :-)
>>
>> It's for good reason that 3.10.2 is informally named "The Heart of
>> Darkness"! ;-)
>
> You are listening to what you're saying aren't you? I know we joke about 
> things
> when we're uncomfortable with them. The people writing the rules don't 
> know how to enforce them? There's an actual part of the manual that has a 
> nick name
>  "The Heart of Darkness!". Your own compiler can't even compete because of 
> the labyrinth of rules.

Not really. My compiler can't compete because I'm a lousy businessman and to 
a lesser extent because I'm rather burned out.

Some of these corner cases (especially "the Heart of Darkness") are obscure 
corners of the language of little interest to anyone. Until you try to get 
rid of them, and then the safety argument rears up (dangling pointers are a 
scourge).


> Ada has become the American tax code. It's becoming abundantly clear
> that there has to be a massive break in backward compatibility in the next
> revision of the language that makes writing compilers easier, not just 
> keeping
> AdaCore in business, but breaking out of the framework of Ada 95.

I'd be in favor of that, but I'm dubious that the customers that support Ada 
would want to make that sort of change. And if the customers don't come 
along, then there is little energy for anything to happen. After all, most 
hobbyest driven projects tend to wane after a couple of years, and that's 
not going to work for the sorts of long-lived projects that Ada is best at.

> We find ourselves discussing this regularly in #ada on Freenode. Many of 
> us
> see Ada as a sinking ship because of all its baggage. The ideals are 
> strong,
> but the implementation is losing us.

I could see some relatively small tweaks, but I doubt that would help 
implementation effort much. In particular, one of the nastiest things is 
type resolution. But the part of type resolution that is hard is the ability 
to overload on result types. (That's not allowed by C++, for instance.) But 
a large part of the elegance and ease-of-use of operators comes from that 
ability. Taking it away would prevent a lot of common techniques (for 
instance, it's what allows overloading of enumeration literals).

I'd be more interested in regularizing some of the rules (such as making 
objects overloadable) -- but I doubt that would have any positive impact on 
the effort to implement Ada.

One could try removing/altering large but not frequently used areas -- fixed 
point, tasks, discriminant-dependent components come to mind -- but for each 
one, you'd lose a bunch of Ada fans.

> I surely need to review the AIs for the next revision to see what's 
> happening.

Nothing to speak of yet; too soon after Ada 2012 to do anything formally. 
We're just gathering ideas at this point.

                                  Randy.




  parent reply	other threads:[~2014-03-24 21:21 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-19 13:24 Augusta: An open source Ada 2012 compiler (someday?) Peter Chapin
2014-03-19 18:56 ` Tero Koskinen
2014-03-19 23:02   ` Peter Chapin
2014-03-20 18:13   ` Shark8
2014-03-20 22:41     ` Augusta: An open source Ada 2012 compiler (someday?) (Off topic) erlo
2014-03-20 23:21       ` Randy Brukardt
2014-03-19 23:04 ` Augusta: An open source Ada 2012 compiler (someday?) Brian Drummond
2014-03-19 23:24   ` Peter Chapin
2014-03-20  0:00     ` Brian Drummond
2014-03-20 18:35   ` Shark8
2014-03-22 14:30     ` Brian Drummond
2014-03-20 10:23 ` Lucretia
2014-03-20 10:49   ` J-P. Rosen
2014-03-20 23:15     ` Randy Brukardt
2014-03-24  8:18       ` J Kimball
2014-03-24  9:17         ` Thomas Løcke
2014-03-24 10:00           ` Brian Drummond
2014-03-24 14:16           ` Luke A. Guest
2014-03-24 12:51         ` Peter Chapin
2014-03-24 21:21         ` Randy Brukardt [this message]
2014-03-24 23:18           ` Dennis Lee Bieber
2014-03-24 23:50             ` J Kimball
2014-03-25  9:37           ` Stefan.Lucks
2014-03-25 20:47             ` Randy Brukardt
2014-03-25 19:41         ` Michael B.
2014-03-26  1:50           ` Shark8
2014-03-26 20:39             ` Simon Clubley
2014-03-27  9:32               ` Shark8
2014-03-27 20:02                 ` Simon Clubley
2014-03-27 20:38                   ` Lucretia
2014-03-27 21:51                     ` Niklas Holsti
2014-03-27 22:32                       ` Luke A. Guest
2014-03-28  5:12                         ` Shark8
2014-03-28  5:11                           ` J Kimball
2014-03-28  8:06                         ` Georg Bauhaus
2014-03-28 11:31                       ` Peter C. Chapin
2014-03-31 23:43                         ` Randy Brukardt
2014-03-28  8:56                     ` Dmitry A. Kazakov
2014-03-28 19:20                   ` Dan'l Miller
2014-03-28 20:40                     ` Dmitry A. Kazakov
2014-03-29 12:34                       ` Dan'l Miller
2014-03-29 13:36                         ` Dmitry A. Kazakov
2014-03-29 12:42                       ` Dan'l Miller
2014-03-29  0:15                     ` Peter Chapin
2014-03-29  3:39                       ` Shark8
2014-03-29  8:46                       ` Georg Bauhaus
2014-03-29 16:35                         ` Peter Chapin
2014-03-29  9:51                       ` Georg Bauhaus
2014-03-20 19:03   ` Shark8
2014-03-20 18:10 ` Shark8
2014-03-20 18:20   ` Qun-Ying
replies disabled

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