From yoriyuki at mbg.ocn.ne.jp Sun Jan 18 01:34:54 2004 From: yoriyuki at mbg.ocn.ne.jp (Yamagata Yoriyuki) Date: Sun, 18 Jan 2004 18:34:54 +0900 (JST) Subject: [Ocaml-i18n] Re: Roadmap to camomile-0.5.0 In-Reply-To: <20031207.071040.85680964.yoriyuki@mbg.ocn.ne.jp> References: <20031207.071040.85680964.yoriyuki@mbg.ocn.ne.jp> Message-ID: <20040118.183454.55516308.yoriyuki@mbg.ocn.ne.jp> From: Yamagata Yoriyuki Subject: Roadmap to camomile-0.5.0 Date: Sun, 07 Dec 2003 07:10:40 +0900 (JST) > 1) Provide a replacement of Pervasive and String. I'd like to > implement the idea of using the open directive. I have done some coding to this goal. You can access the development version via anonymous CVS (see the instruction http://sourceforge.net/cvs/?group_id=40603) In the development version, UTF8Byte, UTF8Unicode modules provided in Camomile module override Pervasives, String, Buffer and Char in the case of UTF8Unicode. "open UTF8Byte" provides some level of Unicode support. All io-functions are replaced so that all strings are converted to UTF8. Comparison by collation, and normalization functions are added to String, and case mappings in String become locale-sensitive. You can still access the each byte in a string. There are two "options" in UTF8Byte. If you open NormalizationNFC after UTF8Byte, all string returned from io-functions and String, Buffer modules are guranteed to be NFC (as long as the arguments are NFC.) If you open NormalizationOff, then normalization is tuned off. (default) "open UTF8Unicode" provides full Unicode support. s.[n] becomes type uchar, and in-place modification is no longer possible. Char becomes a module for unicode characters. "open RawByte" provide the exactly same enviroment of the bare-bone ocaml. If you are interested, please try the CVS version, and let me know your opinions. Don't hesitate to send CC to this list, as well. I think it is an appropriate topic. -- Yamagata Yoriyuki