Ludovic Courtès escreveu: >>> Guile's string API is aiming not to be 8-bit-assuming, and I would >>> guess from the code above that the C++ string class is 8-bit-assuming. >> Sorry, I guess I don't understand. What _is_the assumption for >> representing strings in GUILE? > > Strings in Guile will eventually be sequences of Unicode code points (as > opposed to "bytes"), which can be represented in a variety of different > ways (UTF-8, UCS-4, etc.). How Guile represents strings and whether > this representation "changes dynamically" (as you suggested) should not > be exposed to the applications in order to leave as much freedom as > possible to Guile's implementation strategy.
I think that a sequence of Unicode code points this is a somewhat limited view of how strings should be used. Among others, the implication is that programs cannot rely on being able to index a string in O(1) time (since the string might be UTF-x encoded). What do I use if I want to have guaranteed O(1) indexing -that is- if I want to manipulate strings of bytes? How would I read the contents of a binary file without jumping through encoding hoops? FWIW, I think ttn's suggestion is an excellent one. -- Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen