perldl uses PDL::NiceSlice by default.
Perl scripts do not. Add 'use PDL::NiceSlice' and it should work.

Joel

On Thu, Oct 20, 2011 at 2:09 PM, Joel Berger <[email protected]> wrote:
> This is an effect of the 'strict' pragma. All it means is that you
> need 'my' in front of the declaration of $section, and all other
> variables. The perldl shell has some problems with 'my' variables. I'm
> not so sure if pdl2 has that problem. Anyway the code will work
> without 'use strict' but since you want it, use 'my'.
>
> Joel
>
> On Thu, Oct 20, 2011 at 1:13 PM, zentara <[email protected]> wrote:
>> Hi,
>>
>> I was going thru the Newbook today, and came upon a few
>> typos, as I read with a fine tooth comb. :-)
>>
>> First, is there somewhere to report spelling and typo errors?
>> I already found 3 in the first few lessons. Where and how should they be
>> reported?
>>
>> Also, this is a nit-pick, but it is confusing.
>> I was going thru the code example on node3.html , under the
>> section Twinkle, twinkle, little star.
>>
>> <quote>
>>
>> Twinkle, twinkle, little star.
>> Let's look at something else, we'll zoom in on a small piece of the image:
>>
>>  $section = $gal(337:357,178:198);
>>  imag $section; # It's the bright star
>>
>> </quote>
>>
>> When I try to put the above code, (which runs fine in perldl ),
>> into a conventional Perl script, it won't run, and stops with an error
>>
>> " syntax error at ./z line 18, near "$gal("
>> Global symbol "$section" requires explicit package name at ./z line 19, 
>> <DATA> line 387.
>> Execution of ./z aborted due to compilation errors."
>>
>> The script to generate the error is:
>>
>> #!/usr/bin/perl
>> use warnings;
>> use strict;
>> use PDL;
>> use PDL::Graphics::PGPLOT;
>>
>> my $a = rfits "m51_raw.fits";
>> my $flat = rfits "m51_flatfield.fits";
>> imag $flat;
>> <>;
>>
>> my $gal = $a / $flat;
>> my $section =  $gal(337:357, 178:198 );
>>  imag $section; # It's the bright star
>> <>;
>> __END__
>>
>> It's obvious that
>> my $section =  $gal(337:357, 178:198 );
>> is not proper Perl code, but the question becomes
>> how many other exceptions are there?
>>
>> The tutorial starts out by saying that the same code
>> can be used in perldl as in a conventional Perl script.
>>
>> So, how much leeway is there between Perl syntax, and perldl syntax?
>>
>> Thanks,
>> zentara
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Perldl mailing list
>> [email protected]
>> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>>
>

_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to