comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Ada generics
Date: Thu, 28 Dec 2006 18:09:20 -0600
Date: 2006-12-28T18:09:20-06:00	[thread overview]
Message-ID: <986dnZ745O_nwQnYnZ2dnUVZ_ua3nZ2d@megapath.net> (raw)
In-Reply-To: 15jxp8z1iu5fk.1oeihvavjghgg$.dlg@40tude.net

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2537 bytes --]

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
news:15jxp8z1iu5fk.1oeihvavjghgg$.dlg@40tude.net...
> On 27 Dec 2006 11:06:36 -0800, Hyman Rosen wrote:
>
> > Dmitry A. Kazakov wrote:
> >> The "encoding language" is outside the programming language,
> >> so it is not the language problem
> >
> > Remember that Ada wishes to be case-insensitive,
>
> That's no problem in a closed alphabet, like English/Latin.
>
> > so it cannot ignore
> > Unicode issues if it wishes to allow Unicode characters in identifiers.
>
> Which is a BAD idea, IMO.
>
> We cannot know anything about properties of letters in Klingon. As a
> practical example consider Russian where e can be used (and is) in place
of
> ? see (http://en.wikipedia.org/wiki/%D0%81), but not reverse. Or, maybe we
> should make Ada compilers capable to detect program written by Germans to
> consider � and ue same? Should we handle diacritical vowel points of
Hebrew
> as well? What about parsing the source right to left, or top to bottom?

The Unicode standard has grappled with these issues and produced results
which are useful for the vast majority of languages. Surely Ada is not going
to repeat that work (and arguments). And Ada is not going to drop case
insensitivity and start claiming that "this" and "This" are somehow
different.

> > Not to mention "normalization form KC".
>
> They reap what they sowed. Should Ada or C++ go into that mess?

Well, that's irrelevant because they have. Ada 2005 says that the semantics
of a program not in Normalization form KC are implementation-defined.
(2.1(4.1/2)). That was done because there was concern about programs that
are represented differently being treated the same (we originally considered
requiring converting into that form).

Similarly, upper case conversion is defined by various Unicode properties
(such as Upper Case Mapping) (2.1(5/2)). It should be noted that such
conversions aren't necessarily reversible, but that's irrelevant to
identifier equivalence. Identifier equivalence is defined in 2.3(5-5.3/2).

This is more complicated than the English-only definition, but it was
thought to be mandatory to get approval of a new standard. (This sort of
internationalization is being required of all languages: C++ has a number of
proposals on the table for handling this as well.) It's also a ramification
of case insensitivity - the only alternative would be to completely abandon
it, and that would be very bad for compatibility with Ada 95.

                                    Randy.





  parent reply	other threads:[~2006-12-29  0:09 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-21 14:14 Ada generics markww
2006-12-21 15:42 ` Dmitry A. Kazakov
2006-12-22  7:59   ` Martin Krischik
2006-12-22 16:14     ` Hyman Rosen
2006-12-22  7:59   ` Martin Krischik
2006-12-22 16:41   ` Hyman Rosen
2006-12-22 17:33     ` Markus E Leypold
2006-12-22 18:26       ` Hyman Rosen
2006-12-22 20:59         ` Markus E Leypold
2006-12-22 21:01           ` Markus E Leypold
2006-12-23 14:09           ` Marco
2006-12-25 14:23             ` Hyman Rosen
2006-12-29 14:13               ` Marco
2006-12-25 14:20           ` Hyman Rosen
2006-12-23 11:43     ` Dmitry A. Kazakov
2006-12-25 13:49       ` Hyman Rosen
2006-12-25 14:39         ` Dmitry A. Kazakov
2006-12-26  1:34           ` Hyman Rosen
2006-12-26  9:11             ` Dmitry A. Kazakov
2006-12-26 16:23               ` Hyman Rosen
2006-12-26 19:28                 ` Dmitry A. Kazakov
2006-12-27  1:44                   ` Hyman Rosen
2006-12-27  9:21                     ` Dmitry A. Kazakov
2006-12-27 19:06                       ` Hyman Rosen
2006-12-28 10:59                         ` Dmitry A. Kazakov
2006-12-28 16:29                           ` Hyman Rosen
2006-12-29 11:12                             ` Dmitry A. Kazakov
2006-12-29 14:56                               ` Hyman Rosen
2006-12-28 17:35                           ` Georg Bauhaus
2006-12-29 14:48                             ` Dmitry A. Kazakov
2006-12-29 19:39                               ` Georg Bauhaus
2006-12-30  9:58                                 ` Dmitry A. Kazakov
2006-12-30 14:53                                   ` Georg Bauhaus
2007-01-01 13:00                                     ` Dmitry A. Kazakov
2007-01-02 10:04                                       ` Georg Bauhaus
2007-01-02 11:11                                         ` Dmitry A. Kazakov
2007-01-02 12:33                                           ` Georg Bauhaus
2007-01-02 13:51                                             ` Dmitry A. Kazakov
2007-01-02 14:45                                               ` Georg Bauhaus
2007-01-03 10:10                                                 ` Dmitry A. Kazakov
2007-01-03 14:20                                                   ` Hyman Rosen
2007-01-03 14:55                                                   ` Georg Bauhaus
2007-01-04 10:15                                                     ` Dmitry A. Kazakov
2007-01-03 19:33                                           ` Alexander E. Kopilovich
2007-01-04 10:27                                             ` Dmitry A. Kazakov
2007-01-04 15:00                                               ` Alexander E. Kopilovich
2007-01-05 10:32                                                 ` Dmitry A. Kazakov
2006-12-30  2:25                               ` Randy Brukardt
2006-12-30 10:13                                 ` Dmitry A. Kazakov
2007-01-04  1:09                                   ` Randy Brukardt
2007-01-04 10:07                                     ` Dmitry A. Kazakov
2007-01-05  1:32                                       ` Randy Brukardt
2007-01-05  4:46                                         ` Randy Brukardt
2007-01-05  9:08                                         ` Jean-Pierre Rosen
2007-01-05 20:14                                         ` Georg Bauhaus
2007-01-06  0:14                                           ` Randy Brukardt
2006-12-29  0:09                           ` Randy Brukardt [this message]
2006-12-29 11:11                             ` Dmitry A. Kazakov
2006-12-30  2:40                               ` Randy Brukardt
2006-12-21 16:55 ` Hyman Rosen
2006-12-21 18:22   ` markww
2006-12-22  3:01 ` Steve
replies disabled

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