Ask HN: Improving the Notation of APL/J (and Other Languages)

5 points by earthicus ↗ HN
It's well known that APL's notation is one of its central features, but I admit it, I find APL to be horrendous to read! It's not the use of symbols that turns me off - I was trained in mathematics and am a huge fan of symbolic notations.

The defect is simply a limitation carried over from the 1960s: it's a 1D stream of chars of uniform size. Nowadays we have things like GNU Texmacs [1] which can do fantastic, semantically aware typesetting. Fully 2D notations are a nice to read, but a pain in the neck to type. Perhaps there's a sweet spot at "1.5D" notations: characters of different sizes, like the big summation symbol in mathematics & smaller sub/super-scripts. More generally a 'line' of a program is a grid of 3xN small/medium/large symbols rather than 1xN.

We improve the readability of APL/J by adding enough variety to the different classes of symbols and operations so that it doesn't look like pure line noise. I would love to implement it myself, unfortunately I don't have the expertise to do it! Thus I have the following questions:

1. Does this already exist? Is there any array programming language that uses more elaborate-than-1d mathematical notation?

2. Is it technically feasible to slap a new frontend on APL or J using texmacs and have it generate the APL/J code? The tooling and workflow wouldn't be there but it would be a rough draft.

3. Is there any interest in a "1.5D" text editor analogous to VS Code for a new generation of languages with these easily inputted, typographically refined notations?

4. I'm a bored, partially disabled 30+ year old, who needs a new career. I'm slowly teaching myself programming, did part of SICP, now SML. Unfortunately all of my project ideas that I find motivating are far to ambitious for me to actually carry out! Are there any bored retirees out there who want to become a mentor and work with me in developing my elaborate projects?

[1] http://texmacs.org/tmweb/home/welcome.en.html

0 comments

[ 4.4 ms ] story [ 24.3 ms ] thread

No comments yet.