r27060 - docs/Perl6/Spec

2009-06-12 Thread pugs-commits
Author: pmichaud Date: 2009-06-12 18:29:50 +0200 (Fri, 12 Jun 2009) New Revision: 27060 Modified: docs/Perl6/Spec/S04-control.pod Log: [spec]: Correct buglet in example -- squaring elements of array is @a ?\194?\187**?\194?\187 2, not @a [**] 2. Modified: docs/Perl6/Spec/S04-control.pod ===

r27061 - docs/Perl6/Spec

2009-06-12 Thread pugs-commits
Author: pmichaud Date: 2009-06-12 18:30:25 +0200 (Fri, 12 Jun 2009) New Revision: 27061 Modified: docs/Perl6/Spec/S03-operators.pod Log: [spec]: Correct typo: "fullwith" --> "fullwidth" Modified: docs/Perl6/Spec/S03-operators.pod =

r27062 - docs/Perl6/Spec/S32-setting-library

2009-06-12 Thread pugs-commits
Author: lwall Date: 2009-06-12 18:33:26 +0200 (Fri, 12 Jun 2009) New Revision: 27062 Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod Log: [Containers] add @array.rotate, define push and unshift to return array Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod =

r27063 - docs/Perl6/Spec/S32-setting-library

2009-06-12 Thread pugs-commits
Author: lwall Date: 2009-06-12 18:34:34 +0200 (Fri, 12 Jun 2009) New Revision: 27063 Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod Log: [Containers] default rotation is 1 Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod ==

r27064 - docs/Perl6/Spec/S32-setting-library

2009-06-12 Thread pugs-commits
Author: lwall Date: 2009-06-12 18:47:24 +0200 (Fri, 12 Jun 2009) New Revision: 27064 Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod Log: [Containers] more clarifications Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod

Array rotate

2009-06-12 Thread yary
I am tickled pink to see an Array "rotate" method in the settings spec S032, as I was thinking of writing up a little discussion on the very topic. Has there been discussion on using array rotate on multi-dimensional arrays? Being able to pass in a vector as the amount to rotate would be useful. e

Re: Array rotate

2009-06-12 Thread Jon Lang
On Fri, Jun 12, 2009 at 10:02 AM, yary wrote: > I am tickled pink to see an Array "rotate" method in the settings spec > S032, as I was thinking of writing up a little discussion on the very > topic. > > Has there been discussion on using array rotate on multi-dimensional > arrays? Being able to pa

r27066 - docs/Perl6/Spec

2009-06-12 Thread pugs-commits
Author: lwall Date: 2009-06-12 19:18:58 +0200 (Fri, 12 Jun 2009) New Revision: 27066 Modified: docs/Perl6/Spec/S03-operators.pod Log: [S03] tweak rangechars not to be limited to \w Modified: docs/Perl6/Spec/S03-operators.pod ===

Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread yary
Putting this in a new thread, as I'd like to discuss it separately from refinements to Array.rotate On Fri, Jun 12, 2009 at 10:11 AM, Jon Lang wrote: > With a multi-dimensional array, a number of transforms can be considered: > > * you can rearrange the elements along a given dimension (e.g., rota

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread yary
I think any 1D op could be transformed to "do the right thing" on a multidimensional array, with some sort or hyperop or reduction transform. Rotate, reverse, even add/subtract can be told "do your thing along this vector" and return a usefully dimensioned result. Need to work on other things at t

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Jon Lang
On Fri, Jun 12, 2009 at 10:58 AM, yary wrote: >> * you can rearrange the dimensions themselves (e.g., transpose). > > Reflecting on 2 or more axes creates a transposition. No, it doesn't: @a = (1, 2, 3; 4, 5, 6; 7, 8, 9); Reflecting on two axes would result in: @a = (9, 8, 7; 6, 5, 4; 3

Array Dimensionality (Was: Re: Multi-d array transforms (was Re: Array rotate))

2009-06-12 Thread Daniel Ruoso
Ok, There's one thing that is not clear in the thread, which is when an array is multidimensional or not... For instance: @a = (1, 2, 3; 4, 5, 6; 7, 8, 9); Will produce a flatten array, because list assignment causes flattening, so the dimensionality was lost. It is important to remember that

Re: Array Dimensionality (Was: Re: Multi-d array transforms (was Re: Array rotate))

2009-06-12 Thread Jon Lang
On Fri, Jun 12, 2009 at 11:51 AM, Daniel Ruoso wrote: > Ok, There's one thing that is not clear in the thread, which is when an > array is multidimensional or not... > > For instance: > > �...@a = (1, 2, 3; 4, 5, 6; 7, 8, 9); > > Will produce a flatten array, because list assignment causes flatteni

Re: Array Dimensionality (Was: Re: Multi-d array transforms (was Re: Array rotate))

2009-06-12 Thread Daniel Ruoso
Em Sex, 2009-06-12 às 11:52 -0700, Jon Lang escreveu: > On Fri, Jun 12, 2009 at 11:51 AM, Daniel Ruoso wrote: > > Ok, There's one thing that is not clear in the thread, which is when an > > array is multidimensional or not... > > For instance: > > @a = (1, 2, 3; 4, 5, 6; 7, 8, 9); > > Will produce

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Larry Wall
We also need to consider the "dimension" of referentiality. I can see three levels here. Given @a.mung the .mung could return A) a modified @a (treat @a as mutable) B) a new array (treat @a as immutable) C) a remapped array whose elements refer back to @a's elements Currently

Re: Array Dimensionality (Was: Re: Multi-d array transforms (was Re: Array rotate))

2009-06-12 Thread Larry Wall
On Fri, Jun 12, 2009 at 04:00:10PM -0300, Daniel Ruoso wrote: : Em Sex, 2009-06-12 às 11:52 -0700, Jon Lang escreveu: : > On Fri, Jun 12, 2009 at 11:51 AM, Daniel Ruoso wrote: : > > Ok, There's one thing that is not clear in the thread, which is when an : > > array is multidimensional or not... : >

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Damian Conway
Larry mused: >   �...@a.mung > > the .mung could return > >    A) a modified @a (treat @a as mutable) >    B) a new array (treat @a as immutable) >    C) a remapped array whose elements refer back to @a's elements > > Currently .rotate is defined as A, but I could easily switch it to B, I, for on

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Daniel Carrera
Damian Conway wrote: In fact, I would even be happy with requiring @a.=push and @a.=shift, if it meant that there were *no* special cases. One extra character is a small price to pay for perfect SWIM (and not just "Say What I Mean", the real benefit is the other SWIM: "See What I Meant"). I don

r27073 - docs/Perl6/Spec/S32-setting-library

2009-06-12 Thread pugs-commits
Author: lwall Date: 2009-06-13 01:47:29 +0200 (Sat, 13 Jun 2009) New Revision: 27073 Modified: docs/Perl6/Spec/S32-setting-library/Containers.pod Log: [Containers] define .rotate more like a PDL slice, rely on other ops for exact semantics Modified: docs/Perl6/Spec/S32-setting-library/Contai

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Larry Wall
On Sat, Jun 13, 2009 at 01:25:23AM +0200, Daniel Carrera wrote: > Damian Conway wrote: >> In fact, I would even be happy with requiring @a.=push and @a.=shift, if >> it meant that there were *no* special cases. One extra character is a >> small price to pay for perfect SWIM (and not just "Say What

Re: Multi-d array transforms (was Re: Array rotate)

2009-06-12 Thread Matthew Walton
On Sat, Jun 13, 2009 at 1:08 AM, Larry Wall wrote: > Nevertheless, for any major methods borrowed from Perl 6, I'm not > inclined to change them that drastically.  Much more likely to > define them as sugar for the more general list operators: > >    .push       means   .=append >    .unshift    me