"Learn APL" Notes

36 pointsposted 9 hours ago
by todsacerdoti

9 Comments

smartmic

8 hours ago

I worked with GNU APL for a while and really liked it. It's also possible to extend it with the C foreign function interface (FFI). The best way I found to input the APL2 symbols with my normal keyboard was with a customized XCompose definition where the input chords are mnemonics of the actual symbols: https://gist.github.com/smartmic/cdb8b0b3936ab965213748813b6...

turtleyacht

8 hours ago

Thank-you. Any thoughts on the layout below versus the others listed?

https://www.pckeyboard.com/page/product/USAPLSET

I've got some notes on setting up input on OpenBSD as well. It enables Left Ctrl and Left Alt for APL symbols, but also a Unicode escape hatch with Right Alt and Caps Lock: https://github.com/turtleyacht/ap-el-kb.github.io

ofalkaed

7 hours ago

It looks to be the standard Dyalog APL keyset, which will be just fine for GnuAPL and most if not all APLs but not all languages of the APL family.

mmooss

8 hours ago

APL was developed in the 1960s. Between then and whenever its symbols were added to Unicode (U+2336 and following, at least), how were its symbols encoded?

7thaccount

7 hours ago

Early on, the selectric typewriter thing had a spherical ball that could rotate to stamp the characters. So when you typed a key the IBM hardware would type a character on a piece of paper exactly like a typewriter and also the IBM computer would keep track of this and when you ran the expression it would calculate the result and print that out as well. You can see videos of this.

electroly

7 hours ago

I believe it depends on the era and system, but there were various APL codepages (i.e. definitions for the upper 128 characters) for both EBCDIC and ASCII.

https://en.wikipedia.org/wiki/Digital_encoding_of_APL_symbol...

In the very earliest IBM Selectric teletype-based systems, some APL symbols were constructed by entering one character, hitting backspace, and overstriking a second character. For instance, ⍋ is | overstruck on ∆. It's why a lot of APL symbols look like that.

https://aplwiki.com/wiki/Overstrike

dzaima

8 hours ago

Custom encodings, as was standard (or, well, mandatory) before Unicode (1991). Hell, Dyalog APL to this day supports its classic 1-byte-per-char encoding (not even ASCII-compatible! Nor EBCDIC!) in addition to Unicode.

Looks like the APL chars were added in Uncicode 1.1 (1993), two years after 1.0, which is quick enough.