[#10193] String.ord — David Flanagan <david@...>

Hi,

41 messages 2007/02/05
[#10197] Re: String.ord — Yukihiro Matsumoto <matz@...> 2007/02/06

Hi,

[#10198] Re: String.ord — David Flanagan <david@...> 2007/02/06

Yukihiro Matsumoto wrote:

[#10199] Re: String.ord — Daniel Berger <djberg96@...> 2007/02/06

David Flanagan wrote:

[#10200] Re: String.ord — David Flanagan <david@...> 2007/02/06

Daniel Berger wrote:

[#10208] Re: String.ord — "Nikolai Weibull" <now@...> 2007/02/06

On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:

[#10213] Re: String.ord — David Flanagan <david@...> 2007/02/06

Nikolai Weibull wrote:

[#10215] Re: String.ord — "Nikolai Weibull" <now@...> 2007/02/06

On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:

[#10216] Re: String.ord — David Flanagan <david@...> 2007/02/07

Nikolai Weibull wrote:

[#10288] Socket library should support abstract unix sockets — <noreply@...>

Bugs item #8597, was opened at 2007-02-13 16:10

12 messages 2007/02/13

[#10321] File.basename fails on Windows root paths — <noreply@...>

Bugs item #8676, was opened at 2007-02-15 10:09

11 messages 2007/02/15

[#10323] Trouble with xmlrpc — James Edward Gray II <james@...>

Some of the Ruby code used by TextMate makes use of xmlrpc/

31 messages 2007/02/15
[#10324] Re: Trouble with xmlrpc — "Berger, Daniel" <Daniel.Berger@...> 2007/02/15

> -----Original Message-----

[#10326] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/15

On Feb 15, 2007, at 1:29 PM, Berger, Daniel wrote:

[#10342] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/16

While I am complaining about xmlrpc, we have another issue. It's

[#10343] Re: Trouble with xmlrpc — Alex Young <alex@...> 2007/02/16

James Edward Gray II wrote:

[#10344] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/16

On Feb 16, 2007, at 12:08 PM, Alex Young wrote:

Re: String.ord

From: "Matt Pattison" <matchbo@...>
Date: 2007-02-07 22:57:15 UTC
List: ruby-core #10237
On 2/8/07, David Flanagan <david@davidflanagan.com> wrote:
> Nikolai Weibull wrote:
> > On 2/7/07, Sam Roberts <sroberts@uniserve.com> wrote:
> >
> >> Is creating a temporary 1-byte String really that expensive? Some
> >> benchmarks showing an algorithm that uses a long binary string as a data
> >> structure performs much faster with String#ord(i) than String#[i].ord
> >> would probably convince everybody.
> >
> > May I beg for an /important/ algorithm?
>
> Geez!  What does it take to satisfy you guys!  :-)
>
> Seriously, though, I thought that my suggestion for an optional index
> argument to ord was a modest and sensible one.  Actually, I thought I
> was just pointing out an oversight and I'm surprised at the resistance
> it has faced.  Given the richness of the core Ruby API, I assume that
> decisions about adding methods are based on elegance, and that is
> permitted or even desirable to have more than one way to do something.

FWIW, I think ord_at or a similarly named method sounds like a good idea.
It's simple, and it's a good future alternative to the Ruby 1.8 and earlier
behaviour of String#[] (when given a Fixnum argument).

<snip>

> Anyway, I can see why encoding issues and multi-byte character issues
> argue strongly for representing characters as a kind of String.  Has
> anyone argued for creating a Character class that extends String?  This
> would be a natural place to put methods like ord and digit? alpha?, etc.
> Also, I tend to think that characters should be immutable (I'm not sure
> why) and having a subclass would probably allow that.

I think a Character class could be a good idea, as I felt slightly
uncomfortable in the past indexing into a string and being returned a
Fixnum, and whilst returning a String containing one character is an
improvement, from a purely aesthetic perspective I would prefer to be
returned a Character (derived from a String), and have methods
designed to act on characters factored out into this Character class.
However I am not a Unicode or Ruby internals or language API expert,
so I don't have the same level of insight to add as others in this
thread.

Matt

In This Thread