I'm not sure where the 99% comes from but I definitely
agree that if you add it to PDL::Lvalue and it works, things
will probably work ok. Without more understanding on my
part, I'll have to defer to other experts on lvalue routines and
data-flowing piddles. :-)
--Chris
On Mon, Sep 29, 2014 at 8:46 AM, David Mertens dcmertens.p...@gmail.com wrote:
This seems a tad bit too cautious to me. I would advise that if this works:
($tmp=$a-some_slice_method($n)).=$b
but this fails:
$a-some_slice_method($n).=$b;
chances are 99% or better that merely adding the method to PDL::Lvalue will
work correctly. To be doubly sure, any proposed modification to PDL::Lvalue
should include a test, but I simply cannot imagine that any method that
returns a data-flowing piddle will fail if marked as lvalue.
Maybe, just maybe, it could be an issue if the method is written in Perl
(not PDL::PP) and finishes with a return $result rather than simply
$result on Perls older than 5.20. But that would be caught by tests, is
easily fixed, and will (in about a decade) become a non-issue.
David
On Thu, Sep 25, 2014 at 4:45 PM, Chris Marshall devel.chm...@gmail.com
wrote:
Seems like it ought to work but, again as before, I'm
not sure enough of the implementation to determine
if it should work or not. Maybe when Craig finishes
his tutorial/explanation of how threading/slicing works...
If adding to PDL::Lvalue works, then there is no value
in using the alternatives.
--Chris
On Thu, Sep 25, 2014 at 4:23 PM, Luis Mochan moc...@fis.unam.mx wrote:
I found a similar issue with 'rotate'. I would like to be able to say
$a-rotate($n).=$b;
Would it be safe to add rotate to @funcs in PDL::Lvalue.pm?
It seems that
($tmp=$a-rotate($n)).=$b
works, as well as
$a-rotate($n)-(0:-1).=$b
Are these alternative better/safer?
Best regards,
Luis
On Wed, Mar 26, 2014 at 08:47:51AM +0800, vine xf wrote:
Oh great! After append 'reorder' to PDL::Lvalue.pm, it works as lvalue
function now. Thanks!
On Wed, Mar 26, 2014 at 7:44 AM, Chris Marshall
devel.chm...@gmail.comwrote:
reorder() is not listed as an Lvalue subroutine.
See PDL::Lvalue for the list. It seems like it
should be but I'm not sure enough of the implementation
to determine if it will work as one. You could try
adding it to the PDL::Lvalue list and see if it works.
--Chris
On Tue, Mar 25, 2014 at 7:24 PM, vine xf xf929...@gmail.com wrote:
Hi,
I got an error message while using PDL(2.007, ActivePerl5.16), but
don't
know
why. Here's a simplified example:
everything's ok for this code:
use PDL;
$a = sequence(5,6);
$b = $a-reorder(1,0);
$b .=0; # $a is all zeros now.
but this code doesn't work:
use PDL;
$a = sequence(5,6);
$a-reorder(1,0) .= 0; #Can't modify non-lvalue subroutine call at
-
line 3,
...
But methods like -splice(...) could be assigned to without any
problem.
Is
there a subset of PDL method which can't be assigned to just like
reorder()?
Xiaofang.
___
Perldl mailing list
Perldl@jach.hawaii.edu
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
___
Perldl mailing list
Perldl@jach.hawaii.edu
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
--
o
W. Luis Mochán, | tel:(52)(777)329-1734 /(*)
Instituto de Ciencias Físicas, UNAM | fax:(52)(777)317-5388 `/
/\
Apdo. Postal 48-3, 62251 | (*)/\/
\
Cuernavaca, Morelos, México | moc...@fis.unam.mx /\_/\__/
GPG: 791EB9EB, C949 3F81 6D9B 1191 9A16 C2DF 5F0A C52B 791E B9EB
___
Perldl mailing list
Perldl@jach.hawaii.edu
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
___
Perldl mailing list
Perldl@jach.hawaii.edu
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
--
Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it. -- Brian Kernighan
___
Perldl mailing list
Perldl@jach.hawaii.edu
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl