Live data from Hacker News

A deep dive into APL

curtisautery.appspot.com

1–10 of 93 posts

Re: A deep dive into APL

#2
Nice to see APL lives and people still try to teach it. For software historians, all the 1970s-era manuals are at bitsavers[1]. The language was quite a bit simpler then; several of the primitives this tutorial thought appropriate to introduce didn't exist then.

[1] http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm...

Re: A deep dive into APL

#5
post #4

Is APL still used for anything now? It seems like it could be a useful language for _something_.

I dunno how widely used it is, but there is Kdb+[1], “a column-based relational time-series database” built on the K[2] language, a descendant of APL. I mainly see J[3] used for code golf, but at least that means a decent number of people know it.

[1]: https://en.wikipedia.org/wiki/Kdb%2B

[2]: https://en.wikipedia.org/wiki/K_(programming_language)

[3]: https://en.wikipedia.org/wiki/J_(programming_language)

Re: A deep dive into APL

#7
post #4

Is APL still used for anything now? It seems like it could be a useful language for _something_.

I tend to think about APL as an alternative to R. When working with array-based datasets it's a very nice tool to use.

APL has a small number of very flexible operations, and the key to using APL efficiently lies in understanding these primitives to achieve your goal. Once you learn them, it's more comfortable to use than learning all the intricacies of the R language.

I wouldn't recommend anyone writing a full application in it though. But then again, I don't think anyone uses R for that purpose either.

As an example (which I believe I mentioned last time APL came up on HN) is that one of my solutions to last year's Google Code Jam was a single short line of APL, but then there was about 20 lines of supporting code just to load the dataset and format the output so that is exactly matched the correct format for the submission.

Re: A deep dive into APL

#8
The main problem with (GNU) APL for me is the line editor: I can't feel comfortable using a REPL to write a program without keybindings like ctrl-a, ctrl-w. Everytime I try to learn APL I eventually give up.

Re: A deep dive into APL

#9
post #8

The main problem with (GNU) APL for me is the line editor: I can't feel comfortable using a REPL to write a program without keybindings like ctrl-a, ctrl-w. Everytime I try to learn APL I eventually give up.

I haven't tried it out, but maybe rlwrap can help here.

Re: A deep dive into APL

#10
post #3

Is this sorcery?

It's APL. First time I heard about it was in those "how to shoot yourself in the foot" lists [0]:

* You shoot yourself in the foot and then spend all day figuring out how to do it in fewer characters.

* You hear a gunshot and there's a hole in your foot, but you don't remember enough linear algebra to understand what happened.

[0] http://www.toodarkpark.org/computers/humor/shoot-self-in-foo...

Post reply on HN