comp.lang.ada
 help / color / mirror / Atom feed
* Re: Ada9X Features
@ 1994-09-12 15:12 Michael Hagerty
  1994-09-13 16:08 ` Michael Feldman
  0 siblings, 1 reply; 7+ messages in thread
From: Michael Hagerty @ 1994-09-12 15:12 UTC (permalink / raw)


On Sun, 11 Sep 1994, Michael Feldman <mfeldman@SEAS.GWU.EDU> wrote:

MF> This discussion of "creeping featurism" in Ada 9X points up just
  > how difficult a consensus process is. Everyone says "this language
  > is getting too big; we don't need all this junk; leave _my_
  > favorite stuff in, please."

Much, much, much horse trading goes on in building a consensus on a
standards committee.  I recall one instance on the Pascal committee
where, in order to get the set extensions I so dearly wanted, I went
along with adding complex numbers...  Even then, set complement was
whacked way down when the rest of the committee guessed what was
required in generating the complement of the null set!  Shucks...

Almost every language (he says qualifiedly) has parts that are unused
in common applications.  The goal is to build something like the
mid-scale swiss army knife: all of the things you need daily, some of
what you may need occasionally, but still small enough to carry in
your pocket, so that you will have it when you need it <everyday>.

I think of PL/I as the mega-swiss army knife; you know, the one in
the case that is so big that you could not imagine anyone schlepping
that puppy around...  Ada, in its current implementations, is more
like a ShopMate power tool.

Even Lincoln's comment about "pleasing all of the people" in mind,
there is the issue of timeliness and "hitting the market window".  I
recognize that standard Pascal's position in the market was harmed
by not having an extended language standard at the time the C weenies
were running amok.  Promises of a C standard right around the corner
were believed only by those who had never worked on a standard, but
it did have the effect of spreading FUD (fear, uncertainty and doubt).

Regards, Mikey <michael.hagerty@nitelog.com>



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
  1994-09-12 15:12 Michael Hagerty
@ 1994-09-13 16:08 ` Michael Feldman
  1994-09-13 20:04   ` Robert Dewar
  1994-09-14  9:15   ` Richard A. O'Keefe
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Feldman @ 1994-09-13 16:08 UTC (permalink / raw)


In article <9408127793.AA779382777@smtpgw.fnoc.navy.mil>,
Michael Hagerty  <mhagerty@FNOC.NAVY.MIL> wrote:
>On Sun, 11 Sep 1994, Michael Feldman <mfeldman@SEAS.GWU.EDU> wrote:
>
>MF> This discussion of "creeping featurism" in Ada 9X points up just
>  > how difficult a consensus process is. Everyone says "this language
>  > is getting too big; we don't need all this junk; leave _my_
>  > favorite stuff in, please."
>
>Much, much, much horse trading goes on in building a consensus on a
>standards committee.  I recall one instance on the Pascal committee
>where, in order to get the set extensions I so dearly wanted, I went
>along with adding complex numbers...  Even then, set complement was
>whacked way down when the rest of the committee guessed what was
>required in generating the complement of the null set!  Shucks...

Good anecdote. I was not on the Pascal committee but followed some of the 
discussions. I recall that the standard-making process stalled for some
time on the issue of "conformant array parameters", a seemingly obvious
idea in which array parameters to subprograms conform to the bounds of
the actual parameter (sort of a half-way "unconstrained array type paramter"
to use Ada's terms). This seemed natural to many, especially since
Fortran had it for years.

After all that, there are _two_ Pascal standards, one adopted by ISO
which includes conformant array parameters, and one adopted by ANSI,
which is the ISO one _minus_ conformant array parameters. The story
going around was that the US compiler vendors kept it out of the US 
standard.

And Pascal is a pretty simple language.:-)

Mike Feldman
------------------------------------------------------------------------
Michael B. Feldman -  chair, SIGAda Education Working Group
Professor, Dept. of Electrical Engineering and Computer Science
The George Washington University -  Washington, DC 20052 USA
202-994-5919 (voice) - 202-994-0227 (fax) - mfeldman@seas.gwu.edu (Internet)
NOTE NEW PHONE NUMBER.
"Pork is all that stuff the government gives the other guys."
------------------------------------------------------------------------



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
  1994-09-13 16:08 ` Michael Feldman
@ 1994-09-13 20:04   ` Robert Dewar
  1994-09-16  1:39     ` Michael Feldman
  1994-09-14  9:15   ` Richard A. O'Keefe
  1 sibling, 1 reply; 7+ messages in thread
From: Robert Dewar @ 1994-09-13 20:04 UTC (permalink / raw)


Mike, you are wrong about Fortran and conformant arrays, Fortran does
NOT have this feature, at least not in anything like the form of ISO
Pascal. Arrays in Fortran are passed by address only, and bounds information
is not passed (note I am talking up through 77 here, who knows what they
have wrought in 90 -- well probbaly some reader of this group does :-)




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
  1994-09-13 16:08 ` Michael Feldman
  1994-09-13 20:04   ` Robert Dewar
@ 1994-09-14  9:15   ` Richard A. O'Keefe
  1994-09-14 14:26     ` Michael Feldman
  1 sibling, 1 reply; 7+ messages in thread
From: Richard A. O'Keefe @ 1994-09-14  9:15 UTC (permalink / raw)


mfeldman@seas.gwu.edu (Michael Feldman) writes:

>After all that, there are _two_ Pascal standards, one adopted by ISO
>which includes conformant array parameters, and one adopted by ANSI,
>which is the ISO one _minus_ conformant array parameters. The story
>going around was that the US compiler vendors kept it out of the US 
>standard.

There is a new standard.  ISO Pascal Extended.  It has _two_ mechanisms
for varying-size arrays:  the old conformant array parameters, and a
parametric type mechanism that looks uncannily like Ada.  The story I
heard was that the people who voted to keep conformant array parameters
out wanted to avoid conflicts with a possible future _better_ method,
which eventually arrived, but by then the perception of Pascal as too
crippled to use had sunk in.  I am aware of one ISO Pascal Extended
compiler in progress, but have not been able to locate any commercial
ones or plans for commercial ones, despite the "new" standard having
been out for years.

For what it's worth, the easiest way I can think of to implement "modern"
Pascal would be to build it on top of GNAT.  I'm not sure whether this
says more about Pascal Extended or about Ada.

-- 
The party that took Australia into Vietnam wants to smash the inner-city
yacht school and put a Grand Prix in its place.  They don't change.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
  1994-09-14  9:15   ` Richard A. O'Keefe
@ 1994-09-14 14:26     ` Michael Feldman
  0 siblings, 0 replies; 7+ messages in thread
From: Michael Feldman @ 1994-09-14 14:26 UTC (permalink / raw)


In article <356ev1$s8o@goanna.cs.rmit.oz.au>,
Richard A. O'Keefe <ok@goanna.cs.rmit.oz.au> wrote:

>There is a new standard.  ISO Pascal Extended.  It has _two_ mechanisms
>for varying-size arrays:  the old conformant array parameters, and a
>parametric type mechanism that looks uncannily like Ada.  The story I
>heard was that the people who voted to keep conformant array parameters
>out wanted to avoid conflicts with a possible future _better_ method,
>which eventually arrived, but by then the perception of Pascal as too
>crippled to use had sunk in.  I am aware of one ISO Pascal Extended
>compiler in progress, but have not been able to locate any commercial
>ones or plans for commercial ones, despite the "new" standard having
>been out for years.

Interesting. I had not heard of this, nor seen any books describing it.
(Or is the standard available by ftp somewhere?) Apparently the compiler
houses are not rushing to implement it either.

>For what it's worth, the easiest way I can think of to implement "modern"
>Pascal would be to build it on top of GNAT.  I'm not sure whether this
>says more about Pascal Extended or about Ada.

Even more interesting. Can you briefly describe how to build it on top
of GNAT? (Pascal-ish _sets_ are a CS2 exercise to build on Ada 83.)
Are there Pascal extended features that carry over easily into Ada?

Mike Feldman
------------------------------------------------------------------------
Michael B. Feldman -  chair, SIGAda Education Working Group
Professor, Dept. of Electrical Engineering and Computer Science
The George Washington University -  Washington, DC 20052 USA
202-994-5919 (voice) - 202-994-0227 (fax) - mfeldman@seas.gwu.edu (Internet)
NOTE NEW PHONE NUMBER.
"Pork is all that stuff the government gives the other guys."
------------------------------------------------------------------------



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
@ 1994-09-15 17:56 Michael Hagerty
  0 siblings, 0 replies; 7+ messages in thread
From: Michael Hagerty @ 1994-09-15 17:56 UTC (permalink / raw)


On 13 Sep 1994, Michael Feldman <mfeldman@SEAS.GWU.EDU> responded to my
earler post:

MF> Good anecdote. I was not on the Pascal committee but followed some
  > of the discussions. I recall that the standard-making process stalled
  > for some time on the issue of "conformant array parameters", a seemingly
  > obvious idea in which array parameters to subprograms conform to the
  > bounds of the actual parameter (sort of a half-way "unconstrained array
  > type paramter" to use Ada's terms). This seemed natural to many,
  > especially since Fortran had it for years.

The discussion of conformant arrays is long and tedious with the
sentinel issue being that the originator of the proposed standard tacked
on a feature which had never been tested, saying "take it or leave it".
Note that this was not the designer of the language, but someone who was
believed to be advancing a personal agenda.  The animosity and distrust
engendered in the American committee as a result of this high-handed
tactic doomed conformant arrays to second-class status independent of
the feature's perceived usefulness or uselessness.

Without arguing the reasonableness of such (childish) behavior, I can
say from first hand participation, that there were many of us who were
badly chafed by the whole experience.  I do not believe that this has
happened on Ada9X.

MF> After all that, there are _two_ Pascal standards, one adopted by ISO
  > which includes conformant array parameters, and one adopted by ANSI,
  > which is the ISO one _minus_ conformant array parameters. The story
  > going around was that the US compiler vendors kept it out of the US
  > standard.

Not true anymore.  There is one and only one Extended Pascal Standard.
It does, however, forever relegate conformant arrays to second-class
status, indicating that they will be phased out in a future standard.

MF> And Pascal is a pretty simple language.:-)

Looking more and more like Ada every day...

Regards, Mikey
---
Michael Patrick Hagerty, Computer Sciences Corp.    | mhagerty@fnoc.navy.mil
Fleet Numerical Meteorology and Oceanography Center | Phone:  (408) 656-4456
7 Grace Hopper Ave, Stop 1, Monterey, CA 93943-5501 | FAX:    (408) 656-4313

         "Outside of a dog, a book is man's best friend;
          inside a dog, it's too dark to read..."  Groucho Marx



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Ada9X Features
  1994-09-13 20:04   ` Robert Dewar
@ 1994-09-16  1:39     ` Michael Feldman
  0 siblings, 0 replies; 7+ messages in thread
From: Michael Feldman @ 1994-09-16  1:39 UTC (permalink / raw)


In article <3550l2$8o7@schonberg.cs.nyu.edu>,
Robert Dewar <dewar@cs.nyu.edu> wrote:
>Mike, you are wrong about Fortran and conformant arrays, Fortran does
>NOT have this feature, at least not in anything like the form of ISO
>Pascal. Arrays in Fortran are passed by address only, and bounds information
>is not passed (note I am talking up through 77 here, who knows what they
>have wrought in 90 -- well probbaly some reader of this group does :-)
>
Yes, I was speaking in rather general terms. The point was that because
Fortran arrays are passed by address, one could write array declarations
in subprograms using (if my syntax is right) asterisks in place of
the dimensions. You're right that the bounds are not passed, and
must therefore be passed as extra parameters. 

Excuse the looseness; I didn't mean to get the discussion off track.
The point was that - even with Pascal, a relatively simple language,
it was rather difficult to reach a consensus in certain areas, and
in the end there were _two_ consensuses (consensi?), not one.

This was in response to the thread on "Ada 9X is too big - but please
don't take _my_ features out." People speak about standards as though
they could be handed down from Olympus, and often don't understand
just how much horse-trading and how many constituencies have to be
satisfied.

Mike Feldman
------------------------------------------------------------------------
Michael B. Feldman -  chair, SIGAda Education Working Group
Professor, Dept. of Electrical Engineering and Computer Science
The George Washington University -  Washington, DC 20052 USA
202-994-5919 (voice) - 202-994-0227 (fax) - mfeldman@seas.gwu.edu (Internet)
NOTE NEW PHONE NUMBER.
"Pork is all that stuff the government gives the other guys."
------------------------------------------------------------------------



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~1994-09-16  1:39 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1994-09-15 17:56 Ada9X Features Michael Hagerty
  -- strict thread matches above, loose matches on Subject: below --
1994-09-12 15:12 Michael Hagerty
1994-09-13 16:08 ` Michael Feldman
1994-09-13 20:04   ` Robert Dewar
1994-09-16  1:39     ` Michael Feldman
1994-09-14  9:15   ` Richard A. O'Keefe
1994-09-14 14:26     ` Michael Feldman

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