Paddy writes:
> One that is missing, and every library on the net that I
> have seen has its own variant, is to uppercase (or
> lowercase).
>
> Though F2K is getting close (only 3/4 years down the
> track) shouldn't such an intrinsic be easily acceptable?
Since the existence of lower case was not recognised by the standard
until F90, and even F95 does not require the processor to support lower
case for it to be standard-conforming (if it does, then lower case is
"equivalent" to upper case, which is a standardisation of existing
extensions), this was not even possible before F2K. (Someone refers to
this as FMMV---Roman numerals, but looks suspiciously like the usenet
acronym "fucking mileage may vary". :-) ) I believe F2K will have a
minimal subset of allowable character sets, including ISO-Latin-1 or
whatever.
The question is, in the strict formal sense required by the standard, is
"lower case" sufficiently well defined? (My maths professor used to say
that "`well definied' is not well defined". Last I heard, she was in
the well-defined position of being head of the German mathematicians
society or whatever it's called.)
In German, there is the letter ß. (Depending on support for 8-bit
email, compatibility between character sets---or lack thereof---you
might or might not see this as the German "sz", looking similar to a
lower-case Greek beta.) Rules of orthography state that the upper-case
version of this is "SS", i.e. two S's. This is just one potential
pitfall which occurred spontaneously to me.
As a side-note for VMS fans:
$ TEST = "wefweß"
$ WRITE SYS$OUTPUT F$EDIT(TEST,"UPCASE")
WEFWEß
Obviously, many would prefer this solution rather than changing the
length of the string. Also, Fortran code will probably still be in use
long after the next German-language orthography reform.
Note that the recent (few years ago) German spelling reform stipulates
that some words formally spelled with ß are now spelled with ss. Also,
for even longer, ß does not exist in Switzerland at all. However, this
is no problem, since F2K will also support a "get_locale" feature (not
sure of the exact syntax) to enable things like this to depend on the
country the processor is located in etc. (Thus, one could use , instead
of . to separate the integer and decimal points of real numbers in
countries where this is common (e.g. Germany), or : (as in Sweden),
replace it with the currency symbol (e.g. Portugal, where the currency
symbol is actually $ etc), replace an arbitrary number of 0s after the
decimal "point" with, say, "--" in Germany etc.
Since we now have optional arguments, to return to the example above one
could imagine controlling the behaviour---strictly orthographically
correct, but changing the length, as opposed to the VMS lexical-function
behaviour)---of this and other similar things, if necessary, through
optional arguments.
--
Phillip Helbig Email .............. [log in to unmask]
Kapteyn Instituut Email ................. [log in to unmask]
Rijksuniversiteit Groningen Tel. ................... +31 50 363 6647
Postbus 800 Fax .................... +31 50 363 6100
NL-9700 AV Groningen Web ... http://www.astro.rug.nl/~helbig/
My opinions are not necessarily those of my employer.
|