On Thu, 2 Sep 2004, Larry Wall wrote:
> A multidimensional array is indexed by a semicolon list, which is really
> a list of lists in disguise.  Each sublist is a slice of one particular
> dimension.  So
>
>     @array[0..10; 42; @x]
>
> is really short for
>
>     @array.postcircumfix:[]( <== [0..10], [42], [EMAIL PROTECTED] );

I'm a bit surprised.

If I declare

   method postcircumfix:[] ($self: [EMAIL PROTECTED]);

Is $object[$yada] the same as

   $object.postcircumfix:[]( $yada );          # which I would expect

or

   $object.postcircumfix:[]( <== [ $yada ] );  # which surprises me

If the latter, Why?
If the former, where did the extra magic for arrays come from?


Tangential trivial thoughts:

Can I declare an alphabetic postcircumfix operator?

   sub postcircumfix:ipso...facto ( $left, $inside ) {...}

Is that even usable, given that no space is allowed before the
postcircumfix operator?  Or does this work:

   $foo.ipso 'bar' facto;

Or maybe it has to be declared multi instead of sub for that?

~ John Williams

Reply via email to