> On http://www.parrot.org/languages I found a project called Matrixy > which is an implementation of Octave. I don't know how complete it is > and how easy or difficult it will be to create PDL code from its parse > tree but I hope I could tease the author into subscribing to this list so > he will be able to give us an idea where things are standing.
I'm the primary author of Matrixy right now, so maybe I can help with some information. Matrixy is really two projects: 1) http://github.com/Whiteknight/matrixy, the Matrixy parser and runtime (aims to be a more-or-less faithful compiler for the M language used by Matlab/Octave) 2) http://github.com/Whiteknight/parrot-linear-algebra, which intends to implement a number of "high performance" matrix data types for use generally by Parrot. This includes bindings to CBLAS and CLAPACK libraries for linear algebra (very preliminary). It is unlikely that Matrixy will ever be as performant or as capable as Matlab or Octave are. The primary goals of the project were to bring quality mathematics and linear algebra support to Parrot. Since M is so focused on linear algebra and has syntax and routines specially for building and manipulating matrices, it is a very natural choice for writing those kinds of routines in. Ideally I would like to see Matrixy used to write mathematics libraries which in turn can be used by other HLLs on Parrot. I talked with Gabor yesterday on IRC, and it seems another good use for Matrixy is to serve as a parser for M, which can possibly repurposed as a code translator to PDL. That would be fine too. With the completed parser, the only remaining task would be a PDL code generator. I don't know enough about PDL, so if anybody was interested in working on that I would be happy to hand out commit bits to the Matrixy repo. It's hard to estimate, but I think that the Matrixy parser is about 50% complete. It handles a lot of the syntax and a lot of the language idiosyncracies. It's missing support for several important features: structures, cell arrays, proper nargin/nargout handling for functions, etc. I'm in the middle of a relatively messy refactor right now, and I suspect cell arrays will be added shortly after the refactor is complete. Following implementation of the major syntactical items, the remaining work will be in expanding the runtime and improving performance. I've got commit bits for anybody who is interested in Matrixy or Parrot-Linear-Algebra. I'm also happy to answer any other questions that people might have about these projects. --Andrew Whitworth _______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
