comp.lang.ada
 help / color / mirror / Atom feed
* Defending Mike Feldman
@ 1997-01-28  0:00 Bob Collins
  1997-01-28  0:00 ` Robert A Duff
  1997-02-13  0:00 ` Richard A. O'Keefe
  0 siblings, 2 replies; 5+ messages in thread
From: Bob Collins @ 1997-01-28  0:00 UTC (permalink / raw)



Recently, Mike went through Ada hell for writing
reserved words in uppercase only in his textbook.
He "violated" the new "standard" of Ada
capitalization: lowercase for reserved words and
A_Plain_Identifier for identifiers. Well ...
how come when we use Enumeration_IO we can only
print
      AN_ENUMERATION_LITERAL
or
      another_enumeration_literal
but not
      A_Stylish_Enumeration_Literal?

Bob Collins, collins@cs.wm.edu

                         Bob Collins, collins@cs.wm.edu




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

* Re: Defending Mike Feldman
  1997-01-28  0:00 Defending Mike Feldman Bob Collins
@ 1997-01-28  0:00 ` Robert A Duff
  1997-01-29  0:00   ` Ted Dennison
  1997-02-13  0:00 ` Richard A. O'Keefe
  1 sibling, 1 reply; 5+ messages in thread
From: Robert A Duff @ 1997-01-28  0:00 UTC (permalink / raw)



In article <collins-2801970633200001@ratbert.cs.wm.edu>,
Bob Collins <collins@cs.wm.edu> wrote:
>how come when we use Enumeration_IO we can only
>print
>      AN_ENUMERATION_LITERAL
>or
>      another_enumeration_literal
>but not
>      A_Stylish_Enumeration_Literal?

For hysterical reasons.  ;-)

Same thing for Enum'Image.  It's not hard to write a function that
capitalizes "properly", though.

- Bob




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

* Re: Defending Mike Feldman
  1997-01-28  0:00 ` Robert A Duff
@ 1997-01-29  0:00   ` Ted Dennison
  0 siblings, 0 replies; 5+ messages in thread
From: Ted Dennison @ 1997-01-29  0:00 UTC (permalink / raw)



Robert A Duff wrote:
> 
> In article <collins-2801970633200001@ratbert.cs.wm.edu>,
> Bob Collins <collins@cs.wm.edu> wrote:
> >how come when we use Enumeration_IO we can only
> >print
> >      AN_ENUMERATION_LITERAL
> >or
> >      another_enumeration_literal
> >but not
> >      A_Stylish_Enumeration_Literal?
> 
> For hysterical reasons.  ;-)
> 
> Same thing for Enum'Image.  It's not hard to write a function that
> capitalizes "properly", though.

...at least until acronyms are thrown in. Then you need a database of
"exceptions" to the standard capitalization.

-- 
T.E.D.          
             |  Work - mailto:dennison@escmail.orl.lmco.com  |
             |  Home - mailto:dennison@iag.net               |
             |  URL  - http://www.iag.net/~dennison          |




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

* Re: Defending Mike Feldman
  1997-01-28  0:00 Defending Mike Feldman Bob Collins
  1997-01-28  0:00 ` Robert A Duff
@ 1997-02-13  0:00 ` Richard A. O'Keefe
  1997-02-26  0:00   ` Robert Dewar
  1 sibling, 1 reply; 5+ messages in thread
From: Richard A. O'Keefe @ 1997-02-13  0:00 UTC (permalink / raw)



collins@cs.wm.edu (Bob Collins) writes:

>Recently, Mike went through Ada hell [read, was mildly criticised]
>for writing reserved words in uppercase only in his textbook.
>He "violated" the new "standard" of Ada capitalization

as described in the Ada Quality and Style Guidelines,
developed after a lot of thought and input from a lot of people,
representing a lot of experience.

>Well, how come when we use Enumeration_IO we can only print
>      AN_ENUMERATION_LITERAL
>or
>      another_enumeration_literal
>but not
>      A_Stylish_Enumeration_Literal?

Because the declaration is
     type Type_Set is (Lower_Case, Upper_Case);
instead of
    type Type_Set is (Lower_Case, Upper_Case, Mixed_Case);

(:-)

Note that _no_ edition of the Ada standard or style guide has ever
recommended anything but lower case for keywords.  The AQ&S guide
was fixed in its upgrade.  There was a *mountain* of work went into
revising the Ada standard; this one probably fell through the cracks.

With Ada 95's move to ISO 10646, I suspect that the really clued up
Ada revision people might have been aware of the advice in section
4.1 of the Unicode 2.0 book:

	Because there are many more lowercase forms than there are
	uppercase or titlecase, it is recommended that the lowercase
	form be used for normalization, such as when strings are
	case-folded for loose comparison or indexing.

Now Ada 95 doesn't allow Unicode letters in identifiers, but there again,
the revisers may well have been aware of section 5.14 "Identifiers",
which gives the Unicode recommendation for identifiers.  Or of section
4.1 that points out that the Turkish uppercase of "i" is a *dotted*
capital I, while the Turkish lowercase of "I" is a *dotless* i, so that
even upper casing "i" depends on locale.  So they _may_ have decided to
leave this glitch in the language until identifier and case mapping
issues were satisfactorily resolved in the context of ISO 10646.  I
for one would _hate_ to see them act in haste, because then we'd _all_
be left to repent at leisure.

-- 
limits on the scope of cooperation are often due to the inability
to recognise the identity or the acts of the other playes.  --R.Axelrod
Richard A. O'Keefe; http://www.cs.rmit.edu.au/%7Eok; RMIT Comp.Sci.




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

* Re: Defending Mike Feldman
  1997-02-13  0:00 ` Richard A. O'Keefe
@ 1997-02-26  0:00   ` Robert Dewar
  0 siblings, 0 replies; 5+ messages in thread
From: Robert Dewar @ 1997-02-26  0:00 UTC (permalink / raw)



Richard advances some entertaining theories to answer:

>Well, how come when we use Enumeration_IO we can only print
>      AN_ENUMERATION_LITERAL
>or
>      another_enumeration_literal
>but not
>      A_Stylish_Enumeration_Literal?



But in fact the answer is quite simple. In the original Ada 83 document
and design, the preferred thinking was all upper case for all identifiers,
so it was natural to have Enumeration_IO normalize to upper case.

During the revision, it would have been absurd to change this. We were
very careful to avoid gratuitious incomaptibilities with Ada 83,
especially ones like this, that would have caused programs to silently
malfunction.





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

end of thread, other threads:[~1997-02-26  0:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-01-28  0:00 Defending Mike Feldman Bob Collins
1997-01-28  0:00 ` Robert A Duff
1997-01-29  0:00   ` Ted Dennison
1997-02-13  0:00 ` Richard A. O'Keefe
1997-02-26  0:00   ` Robert Dewar

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