Skip to content(if available)orjump to list(if available)

"Learn APL" Notes

"Learn APL" Notes

10 comments

·October 25, 2025

smartmic

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

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

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.

bear8642

huh, can you not use the Xkb APL symbols file?

I thought that compose definitions as well as the shifted layout…

ofalkaed

You can and most do but some people go other routes for one reason or another.

https://aplwiki.com/wiki/Typing_glyphs

mmooss

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?

null

[deleted]

7thaccount

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

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

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.