http://www.perlmonks.org?node_id=599596

lin0 has asked for the wisdom of the Perl Monks concerning the following question:

Greetings Fellow Monks,

I am collecting references on scientific computing with Perl. In particular, I am interested in applications on numerical analysis, machine learning, and pattern recognition. To give you an idea of the kind of material I am looking for, here is a list of references I have found so far:

If you are aware any other reference (specially books and articles) on scientific computing with Perl, please let me know.

Thanks,

lin0

Replies are listed 'Best First'.
Re: recommendations on scientific computing with Perl
by geekphilosopher (Friar) on Feb 12, 2007 at 23:00 UTC

      Hi geekphilosopher,

      Thanks for the pointer. However, I am not sure if there is something like what I am looking for in that book. It is really hard to say by only looking at the table of contents. In any case, it is my understanding that the book contains 70 articles from the Perl Journal. I guess that I better search carefully in their website to mine for the information I am looking for.

      Cheers,

      lin0
Re: recommendations on scientific computing with Perl
by emazep (Priest) on Feb 13, 2007 at 01:28 UTC
Re: recommendations on scientific computing with Perl
by educated_foo (Vicar) on Feb 13, 2007 at 03:21 UTC
    This depends on your particular needs, but I wouldn't overlook Perl's power as a glue language. For example, Matlab (or its free equivalent Octave) has a rich set of built-in linear algebra and signal-processing functions, and is the lingua franca of machine learning. I've often found it easier to talk to Octave over a pipe, via script files, and/or by reading and writing Octave-format text data than to rewrite code in PDL, or even to use Inline::Octave. I'm guessing things are similar in other domains.

      Hi educated_foo,

      Thanks for the comment. I agree with you in that Perl is an excellent glue language. However, I also think that it is capable of much more than that but I will leave that for another post :-) By the way, I am also interested in articles and books related to the use of Perl as a glue language for scientific computation. For example, articles in which CPAN modules for machine learning ( some of which are Perl bindings to C/C++ libraries ) are used. If you know of such articles, please, let me know.

      Cheers,

      lin0
        I work in machine learning and use Perl for most of my scripting, but have never bothered to use CPAN's machine learning modules. First, you often need to do some additional linear algebra on your data (e.g. centering, finding eigenvalues, SVD, etc.), and these modules don't share a common matrix representation. The lack of a common format for compact storage and a rich library of numerical algorithms makes it hard to do things quickly in pure Perl. Second, many CPAN modules I've looked at seem to have been written either for their authors' edification or without caring about large datasets (e.g. Algorithm::SVMLight requires you to add your datapoints one at a time in bulky hash-refs), while most of the problems I care about involve huge amounts of data.

        I think the PDL statistics paper someone else mentioned is the best "perl for statistics" resource I've seen. Depending on your problems and level of familiarity with the field, there may be some articles on Perl.com of interest. As much as I loathe Java, I would actually recommend Weka as an implementation of lots of machine learning algorithms that work well together. But unless PDL does what you want, I'd suggest something other than Perl (including CPAN modules) for your core algorithms.

Re: recommendations on scientific computing with Perl
by dwhite20899 (Friar) on Feb 13, 2007 at 01:25 UTC
Re: recommendations on scientific computing with Perl
by barrachois (Pilgrim) on Feb 13, 2007 at 23:09 UTC
Re: recommendations on scientific computing with Perl
by dwhite20899 (Friar) on Feb 14, 2007 at 19:16 UTC
    the YAPC::EU::2002 topic was "The Science of Perl" so you may want to check the archives for interesting things.

    The topics may be dated, but you can follow up on the presenters and papers...