Monday, July 29, 2013

APL

A recent post hit HNN waxing lyrical about the glory days of programming and including APL. The real problem with APL today is that there isn't a whole lot of open-source support for it, but it turns out it's still used (or at least some of its direct successors are still used) extensively for financial modeling at e.g. Morgan Stanley and that kind of company.  It's still a valuable skill, actually, in that industry. And since it's valuable for the masters of the universe, it's mostly supported as $100K-per-CPU site licenses, and not so much as open source.

There are exceptions:
  • J, of course, which I'd seen before. You think Perl is line noise? J looks worse to my eye.
  • OpenAPL, which only runs under Linux but is interesting nonetheless.
  • Kona is an open-source re-implementation of K, "K" presumably being intended as a successor to J. It's still line noise, but the Wiki is nice.
  • NARS2000 is an experimental successor to APL written and maintained by one of APL's authors, and runs only under Windows (or Wine).
APL is neat. For quick, concise definition of linear algebra-type problems, it still can't be beat. As with many DSLs, I think it's a mistake to try to build all the filesystem and module stuff into it directly (except insofar as it can be used to memory-map files for extremely rapid access to large data), and I certainly think it should be embedded into some kind of semantically oriented declaration and documentation system, but the fact remains that it is neat.

No comments:

Post a Comment