Current issue

Vol.26 No.4

Vol.26 No.4


© 1984-2024
British APL Association
All rights reserved.

Archive articles posted online on request: ask the archivist.


Volume 17, No.3


by Stefano Lanzavecchia (

‘Oh, you can’t help that,’ said the Cat:
‘we’re all mad here. I’m mad. You’re mad.’
’How do you know I’m mad?’ said Alice.
’You must be,’ said the Cat, ‘or you wouldn’t have come here.’

L. Carroll – “Alice’s adventures in Wonderland”

What is APL for you?

It’s A Programming Language, but not just any programming language otherwise you would not be reading Vector. What is it that makes APL special for you? It’s an interpreter, hosted in and in the case of the Windows and the new Linux implementations completely based on an old-fashioned interactive development environment, one of the few left in fact. It’s a productive language, capable of quickly producing prototypes for the solution of complex problems, easily beating many of the fashionable Rapid Application Development tools. It’s the nightmare of the maintenance of legacy systems, thrown together in a sleepless night of beers mixed with coffee, hastily put online and never to be taken off production because users loved them so much that the system became irreplaceable. It’s the failure of all the dedicated task forces created to get rid of the last APL’s symbol from the mainframes before the doom of the Y2K bug. It’s the elegance of its terse syntax and the power unleashed by its array processing capabilities. It’s the pain of its acceptance in the official IT circles. It’s the old refrain from all the IBM dropouts “Does it still exist?”. It’s the offsprings, A, J, K, born from the original concept to develop their own view of high performance array processing. It’s the long list of functions with three-letter names, where none of the variables need more than one keystroke to type. It’s the feeling that it’s cool to work out something by oneself even if it has already been done by somebody else. It’s the tricks using the dyadic transpose combined with an outer product and a reshape to fool your puzzled colleagues. It’s the I-can-do-it-in-one-line philosophy. It’s also a lot of nice memories and friends scattered all over earth, from Australia, to Japan, from Russia, to England, from France to Canada, the annual conference, the Scandinavian meetings.

What is APL for you and what will it be for you in the new millennium?

I hear that the people behind A+, an APL dialect developed at Morgan Stanley, intend to release their interpreter in the public domain. Ask me for contact information if you want to take part in the alpha testing, which by the time you read this might have started already.

script began 5:35:04
caching off
debug mode off
cache time 3600 sec
indmtime not found in cache
cached index is fresh
recompiling index.xml
index compiled in 0.1854 secs
read index
read issues/index.xml
identified 26 volumes, 101 issues
array (
  'id' => '10013520',
regenerated static HTML
article source is 'HTML'
source file encoding is ''
read as 'Windows-1252'
URL: =>
completed in 0.2106 secs