Sat, 9 Oct 1999 12:42:20 +1300, Brian Boutel <[EMAIL PROTECTED]> pisze:
> Be careful. '<-' is two symbols. Replacing it by one symbol can change the
> semantics of a program by affecting layout.
No, because only the indent before the first non-whitespace character
in a line matters. Haskell programs can be typeset even in proportional
font as long as indents have correct relationships between their
lengths.
> If the supply of suitable Ascii symbols seems inadequate, remember
> that Haskell uses Unicode. There is no reason to limit symbols to
> those in the Ascii set.
Yes. Unfortunately under Linux (and probably many other systems)
it is not easy to use Unicode yet, because of lack of text editors
and only partial support from the system (e.g. locale is going to
support UTF-8 in the near future, ncurses does not support UTF-8).
But when Unicode finally comes... How should Haskell's textfile IO
work? And FFI? I'm sure most people will want to use not only Unicode
and I'm afraid many people would treat Haskell as broken when it does
not output non-UTF8 8bit characters in source strings without a change.
I think that the minimum, acceptable and on the other hand reasonably
implementable, is the ability to treat source as ISO-8859-1 or UTF-8,
and treat outside world as ISO-8859-1 or UTF-8, in both places as
chosen with some magical switches. ISO-8859-1 would emulate other 8bit
encodings by transparently passing characters 0..255 through IO and
FFI. And future charset conversion functions will probably represent
8bit encodings as Unicode characters 0..255, even though they "really"
are ISO-8859-1.
Haskell standard speaks nothing about UTF-8, but it's about the only
sensible way of exchange between internal Unicode and external 8bit
streams, and AFAIK it will be / is used in many systems as external
representation.
In a few months I will probably want to use Unicode in Haskell and
will have to temporarily use `type UChar = Int'.
--
__("< Marcin Kowalczyk * [EMAIL PROTECTED] http://kki.net.pl/qrczak/
\__/ GCS/M d- s+:-- a22 C+++>+++$ UL++>++++$ P+++ L++>++++$ E-
^^ W++ N+++ o? K? w(---) O? M- V? PS-- PE++ Y? PGP->+ t
QRCZAK 5? X- R tv-- b+>++ DI D- G+ e>++++ h! r--%>++ y-