comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm.dash-bauhaus@futureapps.de>
Subject: Re: [OT] interesting reason why a language is considered good
Date: Tue, 17 Apr 2012 19:42:57 +0200
Date: 2012-04-17T19:42:58+02:00	[thread overview]
Message-ID: <4f8daba1$0$6559$9b4e6d93@newsspool4.arcor-online.net> (raw)
In-Reply-To: <hu9f8kmizrtl.156hwzs4vzy1p$.dlg@40tude.net>

On 17.04.12 09:34, Dmitry A. Kazakov wrote:
> On Mon, 16 Apr 2012 23:48:15 +0200, Georg Bauhaus wrote:
> 
>> On 16.04.12 20:00, Dmitry A. Kazakov wrote:
>>
>>> You asked for examples of programs allegedly suffering from generality of
>>> the word "when", here is one:
>>
>> Actually I asked for programs that profit from generality of words
>> like "when" used as identifiers.
> 
> If you want to go that way, then I will ask you to show such programs for
> "why", "whose" etc. It always works (does not, actually) in both ways.

Same thing, I'll be happy if you have a list of convincing length
showing programs that profit from "when", or "why", or "whose" in
the same way; feel free to fist replace "when" with some word
not in this set so that "when" does not become a dual use word
(part of syntax and identifier).

Unspecific, generic words just do not work well as identifiers.
Be they "why", or "the", or "and", or "when".

AFAICT, no one so far has cared about the direction of reasoning
you keep bringing to the table. This is all about identifiers:

There is a subset R of identifiers not working well and it happens to
coincide with reserved words of Ada. There is another subset U of
identifiers not working well either, but they are not reserved words
of Ada.

For w in R, bad wording is prevented (see below).
For w in U, bad wording is not prevented (see below).

If w is removed from R, and added to U, then the number of programs
that can be written with bad wording will grow.

The reasons for why w is in R has absolutely nothing to do with the
consequences of moving w from R to U.


>>>     case Alignment is
>>>         when Left =>  ...;
>>>         when Right =>  ...;
>>>         when Middle =>  ...;
>>>     end case;
>>
>> What's the pain?
> 
> Yes, what pain? Why this program didn't suffered from using the dreadful
> "when"?

"When" (like "at", or "from", or "why") is a generic, unspecific word
that serves a purpose well, namely insofar as it is applicable to all
kinds of programs. Being unspecific is a necessary precondition for
a word to be applicable to all kinds of programs. (But unspecific,
generic, does not mean meaningless. Try substituting other words,
either equally unspecific such as "why", or a more specific such
as "booyah", in place of "when". But this is all beside the point.)

>> I have tried to explain that generic identifiers do not inform about
>> specific things.
> 
> And I answered that this does not make them *reserved*.

Who cares? Making words reserved has nothing to do with the matter.
It is all about the effects of making them *unreserved*.


> See, it has nothing to do with the meaning of a word. The only reason why
> "when" should possibly be reserved is on syntactic grounds.

Again, not the point. "When" does not work well as a identifier.
Context will help a lot when understanding some occurrence of "when".
But Ada is not a language that has this "context principle" built
in. So "when" alone is bound to be a failure, just as "why" is.

case Foo is
  why Red => ...;

case Foo is
  booyah Red => ...;

I see more than syntax as the base for preferring "when" over "why",
or "booyah".



>> A graphical terminal on site? Wow!  I am used to SSH.
> 
> http://sourceforge.net/projects/xming  +  putty

X11? Great. BTW, a fancy IDE will not convince me that the
language's syntax should be changed in favor of appearance aided
by a massively error checking source code editor.



  parent reply	other threads:[~2012-04-17 17:42 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-15 10:27 [OT] interesting reason why a language is considered good Nasser M. Abbasi
2012-04-15 11:57 ` J-P. Rosen
2012-04-16 10:37   ` Peter C. Chapin
2012-04-15 12:27 ` Dmitry A. Kazakov
2012-04-17  6:59   ` tonyg
2012-04-17  7:43     ` Dmitry A. Kazakov
2012-04-15 14:05 ` Bill Findlay
2012-04-15 14:21 ` Pascal Obry
2012-04-15 14:54   ` Simon Wright
2012-04-15 15:34     ` Pascal Obry
2012-04-17  5:42       ` Brad Moore
2012-04-17 16:11         ` Simon Wright
2012-04-17 16:33           ` Robert A Duff
2012-04-17 19:34             ` Simon Wright
2012-04-17 21:42               ` Robert A Duff
2012-04-17 22:24                 ` Randy Brukardt
2012-04-18  7:00                   ` stefan-lucks
2012-04-17 21:17             ` Jeffrey Carter
2012-04-15 23:53     ` Brian Drummond
2012-04-16 10:43 ` Marius Amado-Alves
2012-04-16 11:48   ` Georg Bauhaus
2012-04-16 13:06     ` Dmitry A. Kazakov
2012-04-16 15:01       ` Georg Bauhaus
2012-04-16 15:31         ` Dmitry A. Kazakov
2012-04-16 17:11           ` Georg Bauhaus
2012-04-16 17:19             ` Georg Bauhaus
2012-04-16 18:00             ` Dmitry A. Kazakov
2012-04-16 21:48               ` Georg Bauhaus
2012-04-17  3:43                 ` Randy Brukardt
2012-04-17  4:43                   ` Bill Findlay
2012-04-17  7:46                   ` Georg Bauhaus
2012-04-17 22:32                     ` Randy Brukardt
2012-04-18  7:10                       ` stefan-lucks
2012-04-18 23:48                         ` Randy Brukardt
2012-04-19 14:22                           ` Shark8
2012-04-17 15:48                   ` Simon Wright
2012-04-17 16:15                     ` Dmitry A. Kazakov
2012-04-17 19:33                       ` Simon Wright
2012-04-17  7:34                 ` Dmitry A. Kazakov
2012-04-17 16:01                   ` Simon Wright
2012-04-17 17:42                   ` Georg Bauhaus [this message]
2012-04-17 19:17                     ` Dmitry A. Kazakov
2012-04-17  3:24           ` Randy Brukardt
2012-04-17  3:33           ` Randy Brukardt
2012-04-16 19:55   ` sbelmont700
2012-04-17  0:48   ` Peter C. Chapin
2012-04-17 21:59 ` anon
2012-05-13  4:14   ` David Thompson
replies disabled

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