comp.lang.ada
 help / color / mirror / Atom feed
From: Ken Garlington <garlingtonke@lfwc.lockheed.com>
Subject: Re: some questions re. Ada/GNAT from a C++/GCC user
Date: 1996/04/02
Date: 1996-04-02T00:00:00+00:00	[thread overview]
Message-ID: <3160E91E.1627@lfwc.lockheed.com> (raw)
In-Reply-To: Dp77v6.HCw@world.std.com

Robert A Duff wrote:
> 
> But what about the case where I don't *want* to
> name it?  Adding lots of names doesn't make the code more readable.  You
> only want to add names when there's something conceptually name-able.

OK - I'll walk out onto the limb you've so kindly offered. I suspect that,
if you find yourself creating a new scope in "real" code that has no purpose
sufficiently cohensive as to be named, that you need to review your program
structure.

(And out come the saws... :)

> True.  But don't forget that the compiler is just checking that the
> names match up, which is useful, but it's not checking that the names
> actually tell the truth about what "a_scope" is all about.

True, just like it can't tell if any user-defined identifier has the meaning
it should. I think the consistency checking alone is very useful. Consider:

if ... then -- scope_1
   ...
   if .. then -- scope_a
      ...
   end if; -- scope_1
   ...
end if; -- scope_a

Get a page/screen break in just the wrong place, and you can easily mislead
the reader as to the structure of your program. It would be nice if Ada
allowed the naming of if/case statements, just like loops/blocks.

> Note that the block_statement *name* is option in Ada, which I think is
> good -- you can name it if there's a name the gives useful information,
> but if the name is just "The_Loop_Body" or "The_Else_Part", you can omit
> it.

The fact that local scope naming is optional isn't relevant, in my mind.
For that matter, putting a name on the end of most scopes is optional.
If I'm writing a quickie example, I might not put a name on the end of
my subprograms. But for maintainable code, I always put a name on the
end (and a comment on the begin, for that matter.) I try to name all
my scopes, in part to assure myself (and the reader) as to the legitimate
purpose of that scope, and in part to (hopefully) improve readability
of any important code. And, since I like to return strings and other
variant-sized objects from functions, I tend to have my share of block
statements.

By the way, do you have a problem with the "begin" keyword in a subprogram?
I suppose it would also be considered unnecessary, if I understand your
position correctly. What about the "exception" keyword, either in block
statements or subprograms?




  parent reply	other threads:[~1996-04-02  0:00 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-03-27  0:00 some questions re. Ada/GNAT from a C++/GCC user Bill Newman
1996-03-27  0:00 ` Robert Dewar
1996-03-28  0:00   ` Norman H. Cohen
1996-03-28  0:00   ` Brian Rogoff
1996-03-29  0:00     ` John G. Volan
1996-03-30  0:00       ` Mike Young
1996-03-30  0:00         ` Ted Dennison
1996-03-31  0:00           ` Mike Young
1996-03-30  0:00       ` Robert A Duff
1996-03-31  0:00         ` John G. Volan
1996-03-31  0:00           ` Mike Young
1996-04-02  0:00             ` Glenn H. Porter
1996-04-02  0:00               ` Jonas Nygren
1996-04-02  0:00               ` Robert Dewar
1996-04-03  0:00               ` Geert Bosch
1996-04-03  0:00                 ` Robert Dewar
1996-04-01  0:00           ` Robert A Duff
1996-04-03  0:00             ` Scott Leschke
1996-04-04  0:00               ` AdaWorks
1996-04-01  0:00           ` Bruce.Conroy
1996-03-31  0:00         ` Robert Dewar
1996-04-01  0:00           ` Norman H. Cohen
1996-04-01  0:00       ` Norman H. Cohen
1996-04-01  0:00         ` Mike Young
1996-04-02  0:00           ` Norman H. Cohen
1996-04-02  0:00           ` David Shochat
1996-04-02  0:00             ` Mike Young
1996-04-02  0:00           ` Robert Dewar
1996-04-01  0:00         ` Robert A Duff
1996-04-01  0:00           ` Mike Young
1996-04-02  0:00             ` Norman H. Cohen
1996-04-02  0:00             ` Robert A Duff
1996-03-28  0:00 ` Ted Dennison
1996-03-29  0:00   ` Adam Beneschan
1996-03-28  0:00 ` Scott Leschke
1996-03-29  0:00   ` Bill Newman
1996-03-29  0:00   ` Robert A Duff
1996-03-30  0:00     ` Richard Pitre
1996-03-30  0:00       ` Robert A Duff
1996-03-31  0:00         ` AdaWorks
1996-04-01  0:00           ` Robert A Duff
1996-04-01  0:00             ` Ken Garlington
1996-04-01  0:00               ` Robert A Duff
1996-04-02  0:00                 ` Tucker Taft
1996-04-02  0:00                   ` Felaco
1996-04-02  0:00                     ` Robert Dewar
1996-04-03  0:00                     ` Mark A Biggar
1996-04-02  0:00                 ` Ken Garlington [this message]
1996-04-02  0:00                   ` Robert A Duff
1996-04-02  0:00                     ` Ken Garlington
1996-04-02  0:00                       ` Robert A Duff
1996-04-03  0:00                         ` David Emery
1996-04-03  0:00                         ` Ken Garlington
1996-04-09  0:00                           ` Matt Kennel
1996-04-01  0:00             ` Norman H. Cohen
1996-04-01  0:00             ` AdaWorks
1996-04-01  0:00               ` Mike Young
1996-04-02  0:00                 ` Robert Dewar
1996-04-02  0:00                 ` AdaWorks
1996-04-01  0:00         ` Richard A. O'Keefe
1996-04-01  0:00           ` Robert A Duff
1996-04-01  0:00         ` Robert Dewar
1996-04-02  0:00       ` Robert I. Eachus
1996-03-29  0:00   ` Robert I. Eachus
1996-03-29  0:00 ` Robert A Duff
1996-03-29  0:00   ` Brian Rogoff
1996-04-01  0:00     ` Mark A Biggar
1996-04-01  0:00       ` Robert A Duff
1996-03-30  0:00   ` Iterators (was Re: some questions re. Ada/GNAT from a C++/GCC user) Robert I. Eachus
1996-03-31  0:00     ` Mike Young
1996-03-31  0:00       ` Fergus Henderson
     [not found]   ` <4jlj79$h1k@Nntp1.mcs.net>
1996-04-01  0:00     ` some questions re. Ada/GNAT from a C++/GCC user Robert A Duff
1996-04-02  0:00       ` Kevin Cline
1996-04-02  0:00         ` Robert A Duff
1996-04-01  0:00   ` Iterators (was Re: some questions re. Ada/GNAT from a C++/GCC user) Robert I. Eachus
1996-04-04  0:00   ` some questions re. Ada/GNAT from a C++/GCC user Jon S Anthony
1996-03-30  0:00 ` Simon Wright
1996-04-01  0:00 ` Laurent Guerby
1996-04-01  0:00   ` Robert A Duff
  -- strict thread matches above, loose matches on Subject: below --
1996-03-28  0:00 Simon Johnston
replies disabled

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