From: Frank Davis Date: 2006-09-27T01:32:39+09:00 Subject: Re: string#[] I think Ruby treats Strings as an array of bytes. There are a lot of benefits to it. Ruby is built on top of (and is extensible with) C, in which strings really are an array of bytes. String supports the Pack and Unpack operations, which allows you to use the String class when dealing with all kinds of binary data, including making calls to external libraries (.so files, .dll files, etc.). It's a little funky, but it seems to work well. -----Original Message----- From: Newbie [mailto:none@none.com] Sent: Tuesday, September 26, 2006 9:15 AM To: ruby-talk ML Subject: Re: string#[] Why not a 1-character string? Robert Klemme wrote: >> This must be a common newbie question, but I can't find the answer. >> >> Why does string#[] return an ASCII code, rather than a character? >> >> "abc"[1,2] #-> "bc" >> "abc"[1..2] #-> "bc" >> "abc"[1] #-> 98 > > Because there is no character class in Ruby. >