comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm.dash-bauhaus@futureapps.de>
Subject: Re: Pondering what rationale behind record type
Date: Tue, 10 May 2011 12:12:10 +0200
Date: 2011-05-10T12:12:10+02:00	[thread overview]
Message-ID: <4dc90f7a$0$7659$9b4e6d93@newsspool1.arcor-online.net> (raw)
In-Reply-To: <srmjrvuvt6co.1salemwyup26.dlg@40tude.net>

On 10.05.11 09:45, Dmitry A. Kazakov wrote:
> On Tue, 10 May 2011 00:03:37 +0200, Georg Bauhaus wrote:
> 
>> First, in the phrase "end X", the "X" part can usually be omitted.
> 
> That is another fix to do: a default profile which would forbid omitting
> the name. I saw no Ada program in my life which omitted names in the ends.
> 
>> So whenever we put "record" (or "case", or "if", etc) after an "end",
> 
> These are anonymous constructs.

Though a loop can have a name.

Anything wrong with (i.e. makes you shudder)

   Label_A: loop
     ...
   end loop Label_A;

?

> The only reason why record bracket should
> not contain its name is when there is no name, e.g. as Randy has pointed
> out, in an anonymous record type. They are illegal in Ada, but an imaginary
> example could be:
> 
>    function Get_Token (File : File_Type) return
>       (Matched : Boolean; Length : Positive) record
>          ...

In order to be competitive in the current discussion,
pro "end [X]", the example would have to be

   type Get_Token is function (File : File_Type) return
       ((Matched : Boolean; Length : Positive) record
           case Matched is
             when True => Token : String (1..Length);
             when False => null;
           end case;
        end record)
   end Get_Token;



  reply	other threads:[~2011-05-10 10:12 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-09 17:47 Pondering what rationale behind record type Anh Vo
2011-05-09 18:59 ` Adam Beneschan
2011-05-09 19:51   ` Niklas Holsti
2011-05-09 20:02     ` Dmitry A. Kazakov
2011-05-09 20:12       ` Anh Vo
2011-05-09 22:03         ` Georg Bauhaus
2011-05-10  7:45           ` Dmitry A. Kazakov
2011-05-10 10:12             ` Georg Bauhaus [this message]
2011-05-10 12:08               ` Dmitry A. Kazakov
2011-05-10 12:18                 ` Georg Bauhaus
2011-05-10 12:50                   ` Dmitry A. Kazakov
2011-05-10 14:20                     ` Martin
2011-05-11  7:32                       ` Dmitry A. Kazakov
2011-05-11  2:28                     ` Shark8
2011-05-11  7:32                       ` Dmitry A. Kazakov
2011-05-18 22:55                         ` Shark8
2011-05-19  8:12                           ` Dmitry A. Kazakov
2011-05-09 20:49   ` Randy Brukardt
2011-05-19  9:50 ` J-P. Rosen
2011-05-20  6:10 ` anon
replies disabled

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