-------- Original Message --------
Subject: Re: [Haskell-cafe] Hugs vs GHC (again) was: Re: Some random newbiequestions
Date: Mon, 10 Jan 2005 20:47:26 -0500
From: Dimitry Golubovsky <[EMAIL PROTECTED]>
To: Marcin 'Qrczak' Kowalczyk <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
Hi,
Let me add a column for Hugs (summarized by looking at recent checkout from CVS, contained im several C ahd Haskell files):
|Sebastien's| Marcin's | Hugs
-------+-----------+----------+------
alnum | L* N* | L* N* | L*, M*, N* <1>
alpha | L* | L* | L* <1>
cntrl | Cc | Cc Zl Zp | c < ' ' || c >= '\DEL' && c <= '\x9f'
digit | N* | Nd | c >= '0' && c <= '9'
lower | Ll | Ll | Ll <1>
punct | P* | P* | P*
upper | Lu | Lt Lu | Lu Lt <1>
blank | Z* \t\n\r | Z*(except| ' ' \t\n\r\f\v U+00A0
U+00A0
U+2007
U+202F)
\t\n\v\f\r U+0085<1>: for characters outside Latin1 range. For Latin1 characters (0 to 255), there is a lookup table defined as "unsigned char charTable[NUM_LAT1_CHARS];"
I also like Ketil's idea about defining predicates like isUpper or isSpace in multiple files, quoting this:
>> It's not obvious what the predicates should really mean, e.g. should >> isDigit and isHexDigit include non-ASCII digits or should isSpace >> include non-breaking space characters.
> I think perhaps the answer is all of the above. The functions could > be defined in multiple modules, so that 'ASCII.isSpace' would match > the "normal" space character only, while 'Unicode.isSpace' could match > all the weird and wonderful stuff in the standard.
So there might be a bunch of (perhaps autogenerated, from localedef files) modules for each locale/encoding, like ISO8859_1 or KOI_8. These modules might be imported into applications as needed. Also there would be one module autogenerated from the Unicode data files.
Dimitry Golubovsky Middletown, CT
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
