On Thu, 2004-04-15 at 23:13, Dan Sugalski wrote:

> Nah, that turns out not to be the case. It's my plan, and it's 
> reasonable to say I'm OK with it. :) While I'd prefer to have 
> everyone agree, I can live with it if people don't.

Perhaps, as usual, I've been too verbose and everyone just skipped over
what I thought were useful questions, but I came into this thinking "I
must just not get it"... now I'm left with the feeling that there are
some basic questions no one is asking here. Don't respond to this
message, but please keep these questions in mind as you start to
implement... whatever it is that you're going to implement for this.

     1. People have referred to comparing names, but most of the things
        that make comparing names hard exist with respect to NAMES, and
        not arbitrary strings (e.g. "McLean" is very different from
        substr("358dsMcLeannbv35d",5,6).... That is not something that
        attaching metadata to a string is likely to resolve.
     2. There is no universal interchange rule-set (that I have ever
        heard of) for operating on sequences of characters with respect
        to two or more different languages at once, you have to pick a
        language's (or culture's) rules to use, otherwise you are
        comparing (or operating on) apples and oranges.
     3. In any given comparison type operation, one side's rules will
        have to become dominant for that operation. Woefully, you have
        no realistic way to decide this at run-time (e.g. because going
        with LHS-wins would result in sorts potentially getting C<($a
        cmp $b) == 1> and C<($b cmp $a) == 1> which can result in
        infinite sort times.
     4. Given 1..3, you will probably have to implement some kind of
        language "context" system (in most languages, this is handled by
        locale) at some point, and it may need to take priority over the
        language property of the strings that it operates on in certain
        cases.
     5. Given 4, all unary operators become, for example,
                {
                        set_current_locale($s.langauge);
                        uc($s.data)
                }
        Which is, after all what most languages do anyway, but they keep
        that language information as a piece of global state. Allowing
        just for lexical scoping of such things would be very nice.
     6. Separate from 1..5, language is an interesting property to
        associate with strings, but so are a vast number of other
        properties. Why are all of them second class citizens WRT
        parrot, but not language? Why not build a class one level of
        abstraction above raw strings which can bear arbitrary
        properties?
     7. Which programming language does Parrot wish to host which
        requires unique language tagging of all string data? Would this
        perhaps be better left for a 2.0 feature, once the needs of the
        client languages are better understood?

Ok, that's my peace. Thanks for taking the time. I'll be over here
watching now.

> easier and less controvertial things (like, say, threads or events) first.

Hah! That's rich!

-- 
Aaron Sherman <[EMAIL PROTECTED]>
Senior Systems Engineer and Toolsmith
"It's the sound of a satellite saying, 'get me down!'" -Shriekback

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to