TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Mime-Version: 1.0
Sender: "Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
From: "Robert I. Eachus" <[log in to unmask]>
Date: Thu, 10 Dec 1998 10:14:56 -0500
In-Reply-To: <[log in to unmask]>
Content-Type: text/plain; charset="us-ascii"
Reply-To: "Robert I. Eachus" <[log in to unmask]>
Parts/Attachments: text/plain (23 lines)
> W. Wesley Groleau said:
>Some of the solutions to the "static variables" problem seem like an awful
>lot of engineering to emulate something that was poor engineering in the
>first place.  :-)

   There was an excellent paper on that subject many years ago: "Nesting in
Ada is for the birds" by Lori Clarke, et. al. (Presented at the SigAda
conference in 1982 in Washington DC, I think.) Of course, it covered more
than just
static variables.  For those who haven't read it, the paper argues strongly
that  you should almost never nested a subprogram declaration in Ada, you
should declare one or both subprograms in a package instead.  Not because
nesting doesn't work, but because the package idiom is much better. Of
course, nowadays we know so much more--nested procedures should sometimes
be used when they are really macros, or often when instantiating
Unchecked_Deallocation or Unchecked_Conversion.

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...