> So this proposal is more than a UTF8 type, since it > encompasses a move away from text as lists. What interfaces > would we have to text in this proposal? >
Normal users would import modules with specific interfaces, like functions or instances. One possible such module would be Streams like those sugested in the previous article. Others could offer functionality I don't know of -- maybe there's some usefull interface for japanese or greek users we (non japanese or greek) don't imagine. My first attempt would be PortugueseText, with a type that could only be built after Portuguese "primitives" or read from Utf8 with possible errors, and convert to Utf8 of course. That type would always convert to Utf8 with correct diacriticals, and sort with the latest Portuguese agreements. Mapping over syllables could be allowed, that makes sense in syllabic languages. Quotes, questions, parenthesis etc. could be done with functions like 'quote «Ser ou não ser»'. Other could be SimpleEnglishTextAsList, that could offer something close to what we have today, with functions for uppercasing, lowercasing and well behaved (non ambiguous) sorting. Writers of very basic modules would have to touch Utf8 using Foreign. So, maybe the only standard interface would be a (ForeignPtr?) pointer to a null terminated block of memory. This would make Foreign a new Prelude, maybe. In the end, this is just a basic block of memory that we can fill with utf-8 text, and that serves as a common denominador. Best, Maurício _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe