comp.lang.ada
 help / color / mirror / Atom feed
From: Adam Beneschan <adam@irvine.com>
Subject: Re: Elaboration order handling (Was: Bug in 'gnatmake')
Date: Fri, 21 Jun 2013 13:43:22 -0700 (PDT)
Date: 2013-06-21T13:43:22-07:00	[thread overview]
Message-ID: <c338b138-6527-4c9f-b9ed-f05c3a5937a7@googlegroups.com> (raw)
In-Reply-To: <kq263t$287$2@dont-email.me>

On Friday, June 21, 2013 11:35:28 AM UTC-7, Jeffrey Carter wrote:
> On 06/21/2013 08:48 AM, Adam Beneschan wrote:

> None of those are places the language could require a null statement, so I think 
> you're comparing apples to oranges.
> 
> (By "statement", I mean something with a terminator semicolon that I count as a 
> statement when counting statements, which includes declarations. By "null 
> statement" I mean a statement identical to Ada's null statement, even if it's a 
> declaration.

All you said was "I like the idea that something that's empty has to have something special in it to show that it's deliberately empty."  You didn't say that that applied only to things ending in a semicolon.  Don't blame me for "comparing apples to oranges" when all you said was "fruit".


> So, yes, the language could require a null statement in a  
> declarative part.)

Well, it could have, prior to Ada 2005.  That's no longer possible, because of null procedures.


> It appears that the language designers considered declarative regions to be  
> different enough from executable regions to require null statements in the 
> latter and not the former, and most people go along with that without really 
> thinking about it. I thought about it and don't see a significant distinction. 

Then why do you want a separate declarative part at all?  Many popular languages these days don't separate the two, and let you put declarations anywhere you can put a code statement, or even in the middle of another statement.  So if you don't see a significant distinction, why not be consistent?

                          -- Adam

  parent reply	other threads:[~2013-06-21 20:43 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-17 10:57 Range check for type 'Integer' Peter Brooks
2013-06-17 11:23 ` Simon Clubley
2013-06-17 11:54   ` Simon Wright
2013-06-17 12:55   ` Peter Brooks
2013-06-17 13:28     ` Shark8
2013-06-17 13:45       ` Peter Brooks
2013-06-17 21:16         ` Shark8
2013-06-18 10:48     ` Stephen Leake
2013-06-17 12:46 ` Dmitry A. Kazakov
2013-06-17 13:23 ` Bug in 'gnatmake' (Was: Range check for type 'Integer') Jacob Sparre Andersen
2013-06-17 13:32   ` Bug in 'gnatmake' Jacob Sparre Andersen
2013-06-17 16:50   ` Bug in 'gnatmake' (Was: Range check for type 'Integer') Robert A Duff
2013-06-17 19:15     ` Peter Brooks
2013-06-17 21:09       ` Shark8
2013-06-17 21:22       ` Jeffrey Carter
2013-06-18  1:21         ` Peter Brooks
2013-06-18  6:33           ` Jeffrey Carter
2013-06-18  7:29       ` Georg Bauhaus
2013-06-17 18:49   ` Bug in 'gnatmake' Simon Wright
2013-06-18  9:09     ` Elaboration order handling (Was: Bug in 'gnatmake') Jacob Sparre Andersen
2013-06-18 17:09       ` Robert A Duff
2013-06-18 22:52         ` Adam Beneschan
2013-06-19  1:21           ` Jeffrey Carter
2013-06-19 12:38             ` Robert A Duff
2013-06-19 20:43               ` Georg Bauhaus
2013-06-20  0:37                 ` Robert A Duff
2013-06-20 19:56                   ` Georg Bauhaus
2013-06-19 12:22           ` Robert A Duff
2013-06-19 15:46             ` Adam Beneschan
2013-06-19 16:41               ` Robert A Duff
2013-06-19 20:47               ` Georg Bauhaus
2013-06-19 21:36                 ` Adam Beneschan
2013-06-20  0:57                 ` Robert A Duff
2013-06-20  1:09                   ` Jeffrey Carter
2013-06-20  2:29                     ` Adam Beneschan
2013-06-20  6:08                       ` Jeffrey Carter
2013-06-20 15:11                     ` Robert A Duff
2013-06-21  5:26                       ` Jeffrey Carter
2013-06-21 15:48                         ` Adam Beneschan
2013-06-21 18:35                           ` Jeffrey Carter
2013-06-21 19:10                             ` Robert A Duff
2013-06-21 21:27                               ` Jeffrey Carter
2013-06-21 20:43                             ` Adam Beneschan [this message]
2013-06-21 21:44                               ` Jeffrey Carter
2013-06-21 23:47                                 ` Robert A Duff
2013-06-23 14:43                                   ` AdaMagica
2013-06-21 18:58                         ` null declarative parts (was: Re: Elaboration order handling) Robert A Duff
2013-06-21 20:42                           ` null declarative parts Georg Bauhaus
2013-06-20  2:11                   ` Elaboration order handling (Was: Bug in 'gnatmake') Adam Beneschan
2013-06-20 14:44                     ` Robert A Duff
2013-06-20 11:24                   ` G.B.
2013-06-20 15:23                     ` Robert A Duff
2013-06-19 21:00             ` Georg Bauhaus
2013-06-19 22:26             ` Randy Brukardt
2013-06-20  0:31               ` Robert A Duff
2013-06-20 21:36                 ` Randy Brukardt
2013-06-19 13:07         ` Bill Findlay
replies disabled

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