comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@cs.nyu.edu (Robert Dewar)
Subject: Re: Question about the need for requeue as described in Rationale
Date: 1996/07/04
Date: 1996-07-04T00:00:00+00:00	[thread overview]
Message-ID: <dewar.836481944@schonberg> (raw)
In-Reply-To: qw6zq5gxws0.fsf@gargantua.enst.fr


James Squire said

""Indeed, the very astute reader might care to note that we can
actually program this example in Ada 95 without using requeue
at all." - Great! So why was it used if it wasn't needed?  For
that matter, how can I do it in Ada 95 without requeue?"

That strikes me as a bit odd. You often use features in programming
languages that are not "needed", to improve the efficiency, readability,
implementability, or simplicity of your code. After all it is obvious 
that the assignment statement in Ada is redundant in that any code you
write using assignments could be written in an applicative style without
assignments, but that's no reason to avoid assignments.

A complex feature like requeue is never essential from a functionality
point of view (though it might be critical on a given implementation
from a performance point of view). Clearly anything in Ada 95 that can
be written with requeue can be written without, but possibly at the
expense of clarity and efficiency.

This is one of those situations where the notions of complexity and
simplicity get quite confused. Adding a feature like requeue to a
language makes he language more complex, but may well make programs
using the feature more simple.

During the Ada 95 design process, everyone was in favor of simplicity,
and opposed to complexity, but we often found that this agreement was
pretty meaningless, given these often entirely contradictory ideas
of what simplicity might mean. A designer trying to simplify programming
in Ada by providing useful new features does *not* find the impelementors
agreeing that they are simplifying things :-)





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

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-06-20  0:00 GNAT Codesize Haug Buerger
1996-06-20  0:00 ` James E. Hopper
1996-06-21  0:00 ` Doug Smith
1996-06-21  0:00 ` Ralph Paul
1996-06-21  0:00 ` Robert Dewar
1996-06-24  0:00   ` John McCabe
1996-06-24  0:00     ` John Howard
1996-06-25  0:00       ` Robert Dewar
1996-06-25  0:00       ` David J. Fiander
1996-06-26  0:00     ` Robert Dewar
1996-06-28  0:00       ` Fergus Henderson
1996-07-01  0:00         ` Michael Feldman
1996-07-03  0:00           ` John McCabe
1996-07-02  0:00         ` John McCabe
1996-07-03  0:00           ` Robert Dewar
1996-07-06  0:00             ` John McCabe
1996-07-06  0:00               ` Michael Feldman
1996-07-06  0:00               ` Robert Dewar
1996-07-08  0:00             ` Gavin Smyth
1996-06-28  0:00       ` John McCabe
1996-06-28  0:00         ` Fergus Henderson
1996-06-29  0:00           ` John McCabe
1996-07-01  0:00             ` Robert Dewar
1996-07-05  0:00               ` John McCabe
1996-07-05  0:00             ` JP Thornley
1996-06-30  0:00         ` Robert Dewar
1996-07-02  0:00           ` John McCabe
1996-07-03  0:00             ` Robert Dewar
1996-07-03  0:00   ` Question about the need for requeue as described in Rationale James A. Squire
1996-07-05  0:00     ` Bo I. Sanden
1996-07-05  0:00       ` progers
1996-07-06  0:00     ` Robert A Duff
1996-07-04  0:00   ` Samuel Tardieu
1996-07-04  0:00     ` Robert Dewar [this message]
1996-07-08  0:00   ` James A. Squire
1996-07-08  0:00   ` James A. Squire
1996-07-08  0:00     ` Robert A Duff
1996-07-09  0:00     ` Bo I. Sanden
1996-07-08  0:00   ` James A. Squire
1996-07-09  0:00     ` progers
1996-07-10  0:00     ` Robert A Duff
1996-07-10  0:00       ` progers
1996-07-09  0:00   ` Jon S Anthony
1996-07-08  0:00 ` James A. Squire
replies disabled

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