public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: c++ "with" keyword
@ 2003-01-04 17:06 Robert Dewar
  2003-01-04 17:22 ` Daniel Berlin
  2003-01-05 11:33 ` Andrew Haley
  0 siblings, 2 replies; 5+ messages in thread
From: Robert Dewar @ 2003-01-04 17:06 UTC (permalink / raw)
  To: aph, gcc

> See Algol 68 for what happens if you do it the other way...

I am willing to bet that this comment is made with *ZERO* knowledge
about Algol-68. In fact the Algol-68 standard was remarkably complete
and successful, and in environments where full Algol-69 compilers
became available (notably on the ICL-9000 and CDC-6000 series machines
it was widely used). The issue of why it was not more successful is
a commercial/marketing one, which had very little if anything to do
with the way the standard was produced.

I am certainly not opposed to experimentation with new features
using existing compilers (GNAT has been used this way in the Adaq
community, for example we implemented "with type" pretty early on
and partly as a result of this experience, we have learned that it
was not the best approach). But discussion and suggestions of new
features are best carried out in forums primarily populated by
users and language designers, rather than compiler implementors.

Another danger of course is that if a half baked feature is
implemented, then it gets stuck and never removed (we will in
fact remove the "WITH TYPE" feature in GNAT when a better
substitute comes along, even though it will discombobulate
people). It is too easy to argue for keeping junk stuff around
for compatibility reasons (witness recent thread here in which
some argued that junk illegal semicolons should be accepted in
C++ due to the existence of incorrect code :-)


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

* Re: c++ "with" keyword
  2003-01-04 17:06 c++ "with" keyword Robert Dewar
@ 2003-01-04 17:22 ` Daniel Berlin
  2003-01-05 11:33 ` Andrew Haley
  1 sibling, 0 replies; 5+ messages in thread
From: Daniel Berlin @ 2003-01-04 17:22 UTC (permalink / raw)
  To: Robert Dewar; +Cc: aph, gcc

>
> Another danger of course is that if a half baked feature is
> implemented, then it gets stuck and never removed (we will in
> fact remove the "WITH TYPE" feature in GNAT when a better
> substitute comes along, even though it will discombobulate
> people).

people?
That sounds bad.
Maybe you should not remove it, sticking instead to removing things 
that only affect code.
Otherwise, you might have some mightily po'ed discombobulated people on 
your hands.

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

* Re: c++ "with" keyword
  2003-01-04 17:06 c++ "with" keyword Robert Dewar
  2003-01-04 17:22 ` Daniel Berlin
@ 2003-01-05 11:33 ` Andrew Haley
  2003-01-05 11:36   ` Toon Moene
  2003-01-05 14:17   ` [GCC] " Trevor Jenkins
  1 sibling, 2 replies; 5+ messages in thread
From: Andrew Haley @ 2003-01-05 11:33 UTC (permalink / raw)
  To: Robert Dewar; +Cc: gcc

Robert Dewar writes:
 > > See Algol 68 for what happens if you do it the other way...
 > 
 > I am willing to bet that this comment is made with *ZERO* knowledge
 > about Algol-68.

Believe that if you wish.  I'm not a betting man.  The Algol 68
language had no implementations when it was standardized -- AFAIK the
first delivery was 1977!

 > In fact the Algol-68 standard was remarkably complete and
 > successful, and in environments where full Algol-69 compilers
 > became available (notably on the ICL-9000 and CDC-6000 series
 > machines it was widely used). The issue of why it was not more
 > successful is a commercial/marketing one, which had very little if
 > anything to do with the way the standard was produced.

To quote Lindsey's official history: "...why it did not come into more
widespread use, and the answer here is simple enough: because it was
not implemented widely enough, or soon enough.  And the reason for
that is that implementation was too hard..."  This would not have been
the case if implementations had existed at the time of
standardization.

 > Another danger of course is that if a half baked feature is
 > implemented, then it gets stuck and never removed (we will in
 > fact remove the "WITH TYPE" feature in GNAT when a better
 > substitute comes along, even though it will discombobulate
 > people). It is too easy to argue for keeping junk stuff around
 > for compatibility reasons (witness recent thread here in which
 > some argued that junk illegal semicolons should be accepted in
 > C++ due to the existence of incorrect code :-)

Yes, but it's a lot easier to remove a feature from a compiler than
from a standard.

Andrew.

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

* Re: c++ "with" keyword
  2003-01-05 11:33 ` Andrew Haley
@ 2003-01-05 11:36   ` Toon Moene
  2003-01-05 14:17   ` [GCC] " Trevor Jenkins
  1 sibling, 0 replies; 5+ messages in thread
From: Toon Moene @ 2003-01-05 11:36 UTC (permalink / raw)
  To: Andrew Haley; +Cc: Robert Dewar, gcc

Andrew Haley wrote:

> Yes, but it's a lot easier to remove a feature from a compiler than
> from a standard.

Hmmm, the Fortran community has the opposite experience: Several Fortran 
77 constructs were "obsoleted" in Fortran 95, but every time they get 
mentioned in committee meetings, the vendor members of the committee 
exclaim in unisono: "But our compiler will always support <this construct>".

The Bottom Line: Extensions are like Sex; one mistake and you have to 
support it a life time ...

-- 
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
Join GNU Fortran 95: http://g95.sourceforge.net/ (under construction)

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

* Re: [GCC] Re: c++ "with" keyword
  2003-01-05 11:33 ` Andrew Haley
  2003-01-05 11:36   ` Toon Moene
@ 2003-01-05 14:17   ` Trevor Jenkins
  1 sibling, 0 replies; 5+ messages in thread
From: Trevor Jenkins @ 2003-01-05 14:17 UTC (permalink / raw)
  To: Gnu Compiler Collection Hackers

On Sun, 5 Jan 2003, Andrew Haley <aph@redhat.com> wrote:

> Robert Dewar writes:
>  > > See Algol 68 for what happens if you do it the other way...
>  >
>  > I am willing to bet that this comment is made with *ZERO* knowledge
>  > about Algol-68.
>
> Believe that if you wish.  I'm not a betting man.  The Algol 68
> language had no implementations when it was standardized -- AFAIK the
> first delivery was 1977!

Several errors of fact there:

First, the first published date on my copy of the Algol 68-R users Guide
says 1972. Royal Signals and Radar Establishment had versions running
before that.

Second, neither the original report Algol 68 nor the revised report Algol
68 were "standardized". They were and are still maintained by IFIP WG 2.1.
Never been near an International Standards Committee.

But by extension your suggestion that a lanaguge only succeeds because of
wide-spread implementations is clearly wrong. SGML had very few
implementations in the period up to its publication in 1986. Goldfarb's
ARC maybe and that didn't implement the entire standard. Even now CONCUR
isn't there within Clark's SP.

And if Algol-69 was such a beast why was it one of the candidate languages
for what we now know as Ada?

I suspect that the real reason Algol-68 did not catch on was that it was
primarily European in origin.

Regards, Trevor

British Sign Language is not inarticulate handwaving; it's a living language.
Support the campaign for formal recognition by the British government now!
Details at http://www.fdp.org.uk/

-- 

<>< Re: deemed!

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

end of thread, other threads:[~2003-01-05 14:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-01-04 17:06 c++ "with" keyword Robert Dewar
2003-01-04 17:22 ` Daniel Berlin
2003-01-05 11:33 ` Andrew Haley
2003-01-05 11:36   ` Toon Moene
2003-01-05 14:17   ` [GCC] " Trevor Jenkins

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).