From: gwtmp01@... Date: 2005-11-19T04:20:54+09:00 Subject: Re: Investigating Ruby - key limitations ? On Nov 18, 2005, at 11:47 AM, markjreed@gmail.com wrote: >> Ruby's strings are -- in many ways -- what other languages might >> call a ByteVector. > > And that's the problem. A String should be composed of *characters*, > not bytes. I'm no expert on character encodings but as far as I know, the concept of "character" can be pretty complicated. I'd rather have a simple, clean, obvious implementation of a byte vector and build other more complicated concepts on top of that (i.e. other classes/modules). Right now, Ruby happens to package up byte vector functionality in a class called "String". If you are simply saying that the choice of names was unfortunate, well then OK. But if you are asking to insert all the complications of encodings, glyphs, characters, code-points, multi-byte encoding, and so on, into the same class that we use to manipulate byte vectors, then I vote no. As far as I understand, the trajectory on this issue in Ruby is a small change to associate an "encoding" sigil with the byte vector. More complicated facilities could then be constructed on top of this foundation. That seems like a reasonable approach that doesn't really change the current semantics of String. Gary Wright