Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> You could hardly even use it without getting a custom keyboard for it.

Not true. I can still touch-type APL, decades after my last use of the language and I don't have an APL keyboard.

Those complaining about typing being difficult or the funny symbols are not thinking this through.

What's the difference between typing English (or another language) on a computer keyboard without looking at it and typing APL.

None. Exactly zero.

If you don't learn how to type without looking at the keyboard, typing any spoken language is a slow grind.

How long does it take to learn to touch-type, say, English? Not too long. It takes effort and dedication that is well within the skills and mental capacity of 99.999% of the people who use computers. APL is no different.

Of course, you can't go from touch-typing English to touch-typing Greek or Japanese after a few sessions with a card in front of you. It takes work. You have to learn it. And then it's easy.

When I got started, in the early 80's, we would put stickers on the keys, buy a set of replacement keycaps or a ready-made APL keyboard. After not too long the keyboard no longer mattered. I, and everyone else I knew who actually used APL for more than a curious exploration, could touch-type APL on a normal keyboard without any custom labels or keycaps at all. As I said above, I can still do it, decades later.



If you don't touch-type, typing English is terrible; you might reach 24 wpm. The words just have so many letters! By contrast, ιρρω, ("generate the indices for the dimensions of the right-hand argument") is four keystrokes on three keys, like BASIC on a Sinclair ZX-81. That seems like it would make APL a lot more usable for a non-touch-typist than English. With the stickers, anyway.

(I do keep forgetting which keys I have ψ and ξ on in Greek: the illogical C and J. Maybe I should make stickers.)

For a period of time, custom font ROMs or typeballs were harder to improvise than custom stickers; although the PLATO IV and V terminals had both softfonts and overstrike, very few were ever made, and both features were entirely missing from more common hardware, like the IBM 2741, Diablo daisy-wheel printers, Epson MX-80, ADM-3A, VT-100, VT-220, Heath H-19, IBM MDA, Hercules, and even the CGA. In 01986, in the Microsoft shill magazine PC Magazine, Charles Petzold touted this killer new feature of the US$524 EGA: "Even with 64K [video RAM], the normal font is replaceable by software." (March 25, 01986, p. 115.) The TI-99/4A and Nintendo Famicom did of course already use programmable "character generators," but I don't think anyone ever offered APL for them. Eventually, of course, we all moved to framebuffer displays backed by cheap semiconductor RAM, so custom fonts were no longer a premium feature.

I think the "font problem" really was a significant issue for APL adoption during the period 01968–01988, and as it turned out, that was a crucial formative period for computers; that was when we got, among other things, the PDP-8 (and thus process control computers), Unix, TCP/IP, C, the Macintosh, the IBM PC, MS-DOS, spreadsheets, object-oriented programming, semiconductor RAM, computer animation, digital music synthesizers, TeX, Intel and its 8008/8080/8086/80386 line, the primacy of ASCII, the 68000, ARM, RISC in general, and the modern IDE. Of these, only MS-DOS and the 68000 have really fallen out of favor.

There are a lot of path-dependent things in computing that we can attribute to standards established during that time. If IBM hadn't had their head so far up their ass, or if VisiCalc hadn't been written until 01986, things might have turned out very differently for APL.


> custom font ROMs or typeballs

Yup. Used those. I had a PC rigged with a toggle switch and a custom little wire-wrapped board to be able to switch character ROMs. I even wrote printing utilities to be able to pause and swap out the IBM printer's type ball when printing documents that required a mixture of APL code segments and regular text. I wrote a custom hybrid text editor in APL for precisely this purpose, to be able to do application notes that included both character sets.

> I think the "font problem" really was a significant issue for APL adoption during the period 01968–01988

Yes, agreed. The bit of APL history casual observers miss is that Iverson's motivation for transliterating APL symbols into J was exactly this problem. He tried to solve a business/financial/adoption problem. As a result, he bifurcated and confused the APL world. He was wrong to make this decision. And, what ended-up happening was that both languages became oddities rather than what APL could have become with the capabilities of next generation hardware.

That and the cost of licenses. As a student I got free licenses but it was hard to justify what some of these packages cost. STSC's, I think, was the lowest cost most popular version used by most of the university types I used to engage with. IBM's version had penetration into business because of their position with mainframes. Once again, splitting the ecosystem did not do anyone any favors. J is an abomination (it defecates all over Iverson's own seminal paper on the power and value of notation as a tool for thought).

APL had many issues that truly needed resolving. Simple things like the object oriented programming and heterogenous data types would have been very interesting to explore. The other thing may have been providing official means for avoiding O(n^2) issues where just a few innocent looking operators would result in converting vectors intro matrices or >2 dimensional arrays and then having to do all that processing when a simpler procedural option that does not expand to consume all available memory would have been great. In some ways this is the world of Python and numpy today. You can work at various levels of abstraction and be reasonably aware and in control of resources and computational complexity.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: