It was also described in one of the PDL RFCs ages ago.
The general data structure was described which basically
allows a:b:c slices, transposes (read arbitrary dimension
swapping) etc with no copy overhead.
In PDL
$a = zeroes(5000,4000,3000);
$b = $a->slice('2:5000:2,3:3000,0:3000:10')->xchg(2,1);
incurs no copy penalty in $b. In particular changeing $b
changes $a, it is a 'virtual slice'
Karl
[EMAIL PROTECTED] wrote:
>
> Buddha Buck wrote:
>
> > When I heard about transpose() (as well as reshape(), etc), I was
> > concerned about the time it would take to execute these complex
> > operations. To wit, naively, I believed that a lot of data shuffling
> > would be necessary.
>
> If I understand your message correctly this is exactly what PDL, NumPY,
> etc do right now and is also described in one of my messages I sent
> yesterday (Re: RFC 272 (v1) Arrays: transpose()) about implementing
> aliasing ;)
>
> Christian