Seems like you left out the degenerate case for when you run out of pairs:

    sub infix:<!!> (Scalar $x, 0) { $x }



On 2005-08-05 16:24, "Yuval Kogman" <[EMAIL PROTECTED]> wrote:

> On Fri, Aug 05, 2005 at 11:36:16 -0700, Larry Wall wrote:
> 
>> There's something to be said for having a way of indexing into that
>> using numeric subscripts.  Certainly Lisp's extensible car/cdr notation
>> is the wrong way to do it, but cdddr is certainly shorter than
>> 
>>     $pair.value.value.value
>> 
>> But maybe that's worth being dehuffmanized like that...
> 
> Haskell has !! :
> 
> sub infix:<!!> (Pair $x, 0) { $x.key }
> sub infix:<!!> (Pair $x, Int $index) { $x.value !! ($index - 1) }


Reply via email to