|Subject:||Re: GNU APL versus 'tacit' style|
|Date:||Wed, 24 Feb 2021 13:27:24 -0800|
------ Original Message ------
Received: 01:09 PM PST, 02/24/2021
To: Russtopia <firstname.lastname@example.org>, <email@example.com>
Subject: Re: GNU APL versus 'tacit' style
APL2, the language, is standardized in ISO standard 13751. The mischief you are experiencing is non-standard extensions.
I'm unsure what you mean by "tacit style"... indeed style is a very subjective topic and therefore WAY above my pay grade.
There are lot's of excellent on-line resources including a comprehensive FAQ and idiom libraries. I've attached one by IBM' most of the idioms are language independent and the ones that aren't shouldn't be hard to identify.
APL2 was not designed to be a pure functional language, so it doesn't have lambdas or closures. The language originated as a notation to simplify tensor algebra by Kenneth Iverson at IBM; it was subsequently implemented as an interpreted language. Believe it or not, Iverson wrote a high school algebra text--all in APL notation. Needless to say, it's pedigree is completely different from that of LISP and its dependents. This said, closures and lambdas are pretty handy; but, because they are extensions to the ISO standard language, the correct spelling for them is "vendor lock-in".
Back in the early years APL came with an excellent tutorial, but to the best of my knowledge this practice has "devolved". A good book to get you started is APL2 by Brown, et. al.--but to my shock and horror it's stratospherically expensive... maybe there is some introductory stuff on-line...
------ Original Message ------
Received: 12:31 PM PST, 02/24/2021
From: Russtopia <firstname.lastname@example.org>
Subject: GNU APL versus 'tacit' style
What is the general consensus among GNU APL users here on the newer 'tacit style' that seems so prevalent in many online APL resources nowadays? ('forks', 'trains', etc.)
As a new, inexperienced APLer, exploring a bit more with GNU APL, I wonder if it discourages people new to APL to find, as I have, that so many resources online appear to be quite Dyalog-focused so the examples do not work as presented within GNU APL.
I am aware that GNU APL is an 'APL2' implementation for the most part, which is fine by itself and I think it is important to have this open-source, free implementation. However it concerns me somewhat that newcomers to GNU APL may be discouraged to find so many examples online that are incompatible.
Perhaps if I were myself experienced enough, I would write a GNU APL equivalent to the 'APL cart' (aplcart.info) with a focus on translating common idioms from 'tacit style' to APL2 style. (Indeed, perhaps such resources exist and I apologize if I have merely not encountered them yet. I have yet to study in-depth the older 'Finn APL idiom library' and similar).
As for adding tacit style to GNU APL, I do not advocate one way or the other, as I do not have sufficient experience for an informed opinion. How much value would the 'tacit' syntax bring to GNU APL? Would it even be possible to add without breaking APL2 conformance?
I also see a lot of usage online of 'guards' within lambdas which GNU APL seems to lack -- would the language benefit from adding support for that or would many of you say it is just 'syntactic sugar'?
Just some thoughts from an APL newcomer. I enjoy it, and am grateful to Dr. Sauermann et al. for their hard work.
|[Prev in Thread]||Current Thread||[Next in Thread]|