comp.lang.ada
 help / color / mirror / Atom feed
From: Hyman Rosen <hyrosen@mail.com>
Subject: Re: A simple ADA puzzle (I haven't the answer)
Date: Mon, 21 Jun 2004 03:30:32 GMT
Date: 2004-06-21T03:30:32+00:00	[thread overview]
Message-ID: <sDsBc.12343$z24.7444@nwrdny01.gnilink.net> (raw)
In-Reply-To: <pan.2004.06.19.09.31.38.944379@dmitry-kazakov.de>

Dmitry A. Kazakov wrote:
> What's the gain of limiting scope here? A relief for lazy
> programmers, who do not want to create extra *.h files?

The same gain as any limitation of scope - localizing things
to the narrowest region where they are needed. It is no less
sensible than Ada's declare statement. I often write tiny
classes whose job is nothing more than invoking a cleanup
function on an object in its destructor. I put them right next
to the object they will be handling.

> Limiting scope is useful, but it should be made consistently.
 > Clearly a nested thing should see everything from its scope.

C and C++ do not choose to allow closures because of difficulties
with function pointers that result. So it is clear that access to
local variables will never be permitted. The question is then
whether to also forbid a useful thing because of misguided efforts
to impose a useless philosophy. Fortunately the answer was "no".

> Talking about uneducated programmers how would you explain one of them
> what and when will be visible? Ada's choice was to give a clear,
> though unpleasant answer, rather than vague "yes, but".

As I have said, it's extremely simple. Automatic variables are invisible.



  reply	other threads:[~2004-06-21  3:30 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-16 15:40 A simple ADA puzzle (I haven't the answer) Abby
2004-06-16 16:21 ` Frank J. Lhota
2004-06-16 16:26   ` Abby
2004-06-16 17:01     ` Frank J. Lhota
2004-06-16 17:18       ` Martin Krischik
2004-06-17  6:57         ` Brian May
2004-06-17 12:44         ` Frank J. Lhota
2004-06-16 17:58     ` Jeffrey Carter
2004-06-23 21:14       ` Randy Brukardt
2004-06-16 19:51     ` Simon Wright
2004-06-16 17:56   ` Jeffrey Carter
2004-06-16 22:25     ` Martin Dowie
2004-06-17  0:41       ` Jeffrey Carter
2004-06-17  7:45         ` Martin Dowie
2004-06-17 14:20     ` Frank J. Lhota
2004-06-18 18:07     ` Wojtek Narczynski
2004-06-18 18:37       ` Frank J. Lhota
2004-06-19  2:11         ` Brian May
2004-06-19 11:25         ` Wojtek Narczynski
2004-06-19  1:27       ` Jeffrey Carter
2004-06-19 11:17         ` Wojtek Narczynski
2004-06-16 18:31   ` Hyman Rosen
2004-06-16 20:16     ` Frank J. Lhota
2004-06-16 21:05       ` Hyman Rosen
2004-06-17 13:26         ` Frank J. Lhota
2004-06-17 14:19           ` Hyman Rosen
2004-06-17 15:24             ` Frank J. Lhota
2004-06-23 21:27               ` Randy Brukardt
2004-06-17 19:17           ` Georg Bauhaus
2004-06-16 22:48     ` Alexander E. Kopilovich
2004-06-17 10:25       ` Björn Persson
2004-06-17 14:33         ` Frank J. Lhota
2004-06-17 23:15           ` Alexander E. Kopilovich
2004-06-23 21:30           ` Randy Brukardt
2004-06-17  8:06     ` Dmitry A. Kazakov
2004-06-17 12:19       ` Hyman Rosen
2004-06-17 14:16         ` Dmitry A. Kazakov
2004-06-17 14:17           ` Hyman Rosen
2004-06-17 22:51           ` Brian May
2004-06-18  7:50             ` Dmitry A. Kazakov
2004-06-18 12:32               ` Hyman Rosen
2004-06-18  9:14           ` Ole-Hjalmar Kristensen
2004-06-18 12:24             ` Hyman Rosen
2004-06-18 12:41             ` Dmitry A. Kazakov
2004-06-18 13:16               ` Hyman Rosen
2004-06-18 14:01                 ` Dmitry A. Kazakov
2004-06-18 16:14                   ` Hyman Rosen
2004-06-19  9:31                     ` Dmitry A. Kazakov
2004-06-21  3:30                       ` Hyman Rosen [this message]
2004-06-21  8:16                         ` Dmitry A. Kazakov
2004-06-21 16:32                           ` Hyman Rosen
2004-06-22  2:19                             ` David Starner
2004-06-22 13:03                               ` Frank J. Lhota
2004-06-23 21:37                           ` Randy Brukardt
2004-06-24  8:39                             ` Dmitry A. Kazakov
2004-06-24 20:53                               ` Randy Brukardt
2004-06-25  8:24                                 ` Dmitry A. Kazakov
2004-06-25 17:37                                   ` Randy Brukardt
2004-06-26  7:55                                     ` Dmitry A. Kazakov
2004-06-29  0:08                                       ` Randy Brukardt
2004-06-29  9:32                                         ` Dmitry A. Kazakov
2004-06-29 18:36                                           ` Randy Brukardt
2004-06-23 21:21     ` Randy Brukardt
2004-06-24  1:03       ` Jeffrey Carter
2004-06-24 15:19       ` Frank J. Lhota
2004-06-24 16:04         ` Ed Falis
2004-06-24 21:04           ` Randy Brukardt
2004-06-25 15:30             ` Frank J. Lhota
2004-06-25 18:16               ` Bob Spooner
2004-06-25 19:23                 ` Frank J. Lhota
2004-06-26 15:26                   ` Robert I. Eachus
2004-06-28  4:52                     ` Steve
2004-07-04 19:06                       ` Robert I. Eachus
2004-06-29  0:03                 ` Randy Brukardt
2004-06-24 21:00         ` Randy Brukardt
2004-06-16 16:49 ` Martin Krischik
2004-06-17 10:58   ` Björn Persson
2004-06-17  3:48 ` Steve
2004-06-17 10:39   ` Björn Persson
  -- strict thread matches above, loose matches on Subject: below --
2004-06-17  8:38 Christoph Karl Walter Grein
2004-06-23 21:43 ` Randy Brukardt
replies disabled

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