On 3/12/2011 3:44 PM, Ivan Shmakov wrote: > > However, the only way I see for the topmost operator to be > “seen” to PDL before its arguments are actually computed is the > delayed (AKA lazy) evaluation. Which is quite common in certain > languages (and some, like Haskell, are built all around such a > notion), but which I've rarely (if at all) seen being done in > Perl. And I'm not sure that extending PDL “to do it the lazy > way” could be at all easy. (And we'd have to watch for all the > PDL instances involved in such a computation to not become > tampered along the way, as such tampering should wait for the > computation to complete first.)
Lazy evaluation is one approach of interest. The current dataflow support for slicing is similar to that. Another option would be adding something like a forall construct to directly support these types of operations. > Still, individual methods could probably be made > “multicore-enabled” without much effort. I'm, however, unsure > about the overall effect it may have upon the performance, etc. These type of issues will also be involved in effective GPU use with PDL. Thanks for the thoughts, Chris _______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
