With warnings turned on, Perl itself issues warnings about variables that are 
only mentioned once.  But PDL (like some other modules) has several global 
configuration variables.  The Perl debugger doesn’t know about them.  This is a 
wart, but it’s a pretty benign one.  Many folks work around the wart by (a) 
putting the BIGPDL definition in their .perldlrc, and (b) mentioning it twice 
in that file —  so no warnings get emitted.



> On Apr 20, 2015, at 7:06 AM, Juan Daniel Montenegro Cabrera 
> <[email protected]> wrote:
> 
> Hi David,
> Thank you for your reply. That is my understanding of the matter. I only 
> needed to activate de variable so it would allow me to create larger piddles. 
> But for some reason it gives me a warning of a possible typo.
> That' s why I started playing around with different approaches until that one 
> worked. 
> If the BigPdl variable only needs to be set once, then why does it give a 
> warning? Is there something I am missing?
> 
> Thanks for all your help.
> 
> Regards
> 
> Juan Montenegro
> 
> On 20/04/2015 8:57 pm, "David Mertens" <[email protected] 
> <mailto:[email protected]>> wrote:
> Hello Juan,
> 
> $PDL::BIGPDL is evaluated in boolean context, and is meant to only be true or 
> false. It's truthiness is checked in the PDL internals. By assigning a piddle 
> to it (in your line 38), you set a ticking bomb that goes off somewhere in 
> PDL's internals. If you just assign non-piddle true or false values, 
> everything should be fine.
> 
> David
> 
> On Mon, Apr 20, 2015 at 12:04 AM, Juan Daniel Montenegro Cabrera 
> <[email protected] <mailto:[email protected]>> wrote:
> Hi all,
> 
> After playing around a bit with the data this is what I get:
> 
> The way I have been creating and writing the piddle is like this:
> 
> 37) $PDL::BIGPDL =1;
> 38) $matrix = $PDL::BIGPDL = ushort(zeroes(25000, 25000));
> 39) wcsv2D($matrix, $out);
> 
> Error:
> 
> multielement piddle in conditional expression at 
> /home/jmontenegro/bin/build_similarity_matrix.pl 
> <http://build_similarity_matrix.pl/> line 38.
> 
> I am able to reproduce the error using the pdl shell. If I remove the 
> $PDL::BIGPDL from line 38 then it does not complain and writes the file 
> correctly.
> But if I run the corrected script in the server:
> 
> 37) $PDL::BIGPDL =1;
> 38) $matrix = ushort(zeroes(25000, 25000));
> 39) wcsv2D($matrix, $out);
> 
> It complains about a possible typo:
> 
> Name "PDL::BIGPDL" used only once: possible typo at line 37
> 
> This does not happen in the shell, only when I run the script.
> 
> So, what is the correct way to set $PDL::BIGPDL in a script?
> 
> Cheers,
> 
> Juan Montenegro
> 
> 2015-04-20 12:12 GMT+10:00 Juan Daniel Montenegro Cabrera 
> <[email protected] <mailto:[email protected]>>:
> Hello all,
> 
> I am quit new at pdl but have been following it for a few years now. Cut to 
> the chase:
> 
> I am receiving a complain when trying to write a fairly large 2D pdl (25K x 
> 25K matrix):
> 
> multielement piddle in conditional expression
> 
> The offending line is:
> 
> wcsv2D($matrix, $out, {header => $array_ref})
> 
> I have run this command before and it works pretty well for other matrices up 
> to 20K x 20K.
> 
> I cannot see what is the conditional expression here, but I would be grateful 
> if you could point me in the right direction.
> 
> Best regards,
> 
> Juan Montenegro
> 
> 
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- 
> <http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-> event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> pdl-general mailing list
> [email protected] <mailto:[email protected]>
> https://lists.sourceforge.net/lists/listinfo/pdl-general 
> <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> 
> 
> 
> 
> -- 
>  "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
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF_______________________________________________
> pdl-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pdl-general

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
pdl-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pdl-general

Reply via email to