3 ms·
J (http://jsoftware.com/ http://jsoftware.com/) is also an option. It's not open source, either, but older versions of the source are available (j7, IIRC), and
by silentbicycle 16y ago
J (http://jsoftware.com/ http://jsoftware.com/) is also an option. It's not open source, either, but older versions of the source are available (j7, IIRC), and there isn't a restriction on commercial use.
I'm still trying to figure out the APL language family. I'd love to implement one, eventually, but it's a ways off. (I've done a toy interpreter already, but that was just to make sense of some basics.)
- BMarkmann 16y agoFor anyone not familiar with the APL family of languages, prepare to have your mind blown: http://www.youtube.com/watch?v=a9xAKttWgP4 http://www.youtube.com/watch?v=a9xAKttWgP4 Terse, cryptic, powerful. It's like doing magic tricks with code. (Not that that's a recipe for maintainable software, but that's an entirely different debate.) There's also (meant to mention this before) A+, which is GPL, I believe: http://www.aplusdev.org/ http://www.aplusdev.org/
- silentbicycle 16y agoI spent most of a Saturday morning picking apart the prototype J interpreter (http://www.nsl.com/papers/origins.htm http://www.nsl.com/papers/origins.htm) with GDB, which convinced me there was something deep there. I've read most of _J for C Programmers_, and, this week, I also got _APL: An Interactive Approach_. The mindset is starting to make a lot of sense. (I've also looked at A+, but I'd rather stick to the ASCII variants.)
- chl 16y agoA+ has an ASCII mode, activate w/: $mode ascii For a mapping between ASCII tokens and APL glyphs, see: - http://www.vector.org.uk/aflat/tutor/index.htm http://www.vector.org.uk/aflat/tutor/index.htm - http://www.aplusdev.org/APlusRefV2_15.html#HEADING349 http://www.aplusdev.org/APlusRefV2_15.html#HEADING349
- silentbicycle 16y agoGood to know, thanks. I will give A+ another look. Having read more about APL, though, I'm feeling less inclined to write off the extended character setup. Still, it's an issue one needs to sort out upfront. I guess it's the APL equivalent of bitching about parenthesis, when either is a shallow detail compared to what's really novel about the languages. Many languages seem to have shibboleth complaints, to show when people haven't made it past the surface - Lua indexes from 1, Lisp has the parens, Python has the whitespace, etc. Maybe there's a community value in that, I don't know.