HMW Computing
in the city
APL
- What is APL?
- 4XTRA
- Bright Carvings
- Everiware
-
is the site for our Joint Venture
is our business wiki
is our web hosting arm
We are founder members of the PCG QS - ISO 9000 Scheme
What is APL?
Much of HMW's work is the the Agile Array language APL.The following is from Why APL? on the SigAPL site:
The language was invented by Kenneth E. Iverson while at Harvard University. The language, originally titled "Iverson Notation", was designed to overcome the inherent ambiguities and points of confusion found when dealing with standard mathematical notation. It was later described in 1962 in a book simply titled "A Programming Language" (hence APL). Towards the end of the sixties, largely through the efforts of IBM, the computer community gained its first exposure to APL. Iverson received the Turing Award in 1980 for this work..
APL is a user-oriented notation, particularly well suited for communication from people to other people or to computers. The notation consists of a set of symbols (letters, numbers, punctuation, algebra, and special shapes), with a very simple set of rules (syntax) for putting them together to describe the processing of data. The data can be either numeric or literal (which includes words and text handling).
In fact there are about a hundred different “primitive” (i.e. fundamental to APL) operations which can be performed. This can be compared to having a calculator with over 100 different function keys.
I have listed a fair number of APL Resources and could try to make a comprehensive list of APL web sites, but with the typical economy of effort expected of an APLer or agile developer, this is an adequate, working list, but not a definitive one.
APL Dialects
Once upon a time there was an APL interpreter for every hardware and operating system platform you could think of. It was almost a benchmark, a proof that the manufacturer was a serious player if they had an APL running. Now consolidations in the operating systems world, the manufacturers and in the interpreter writers, have left us with a smaller set.The major APL vendors are: Dyalog APL; APL2; Soliton; MicroAPL; & APL2000. In addition there are a number of vector and array processing languages which are descendants of APL. These include K, J & A+. For a fairly comprehensive list see the Wikipedia.
These APL Dialects all have active web sites. I've not included ftp servers, news lists or mail servers:
- A+ is an APL dialect available (as source) under the GNU GPL for various Unix, including Linux, Solaris, FreeBSD, NetBSD, developed at Morgan Stanley by Arthur Whitney et al. The BAA has had some success in porting to Windows
- APL2000 has inherited the products of STSC/Manugistics -APL+DOS, APL+UNIX, APL+Win (for Windows 3.1, NT, 95), APL+Link, APL+Link Pro
- APLX (was APL68000) for Windows, Mac OS (including Mac OS X), Linux and AIX. APL.6800 ran on Atari ST, IBM RS/6000, Mac level I/II, add in board for IBM PCs, PowerMac, Amiga). APLX for Linux is free for non-commercial use
- APLSE is a version of Manugstics/STSC's PC APL, available with very little documentation.
- Dyalog (Win3.x/95/98/ME/2000/XP (they even had a DOS version), Unix/Linux, PocketPC 2002.
- FreeAPL for IBM PC, MS Windows, a version of APL\11 (if you remember that).
- Glee is an APL descendent, for MS Windows.
- IBM APL2 for Windows, AIX, Linux, Solaris and Mainframes.
- J - J (for DOS, Linux, Windows, Mac, RS/6000, Sun)
- K, Kdb; an APL derivative for Solaris, Linux, Windows, used for massive extremely fast databases.
- openAPL a GPL (open source) interpreter, based on APL\11
- SHARP APL (MVS, AIX, SunOS, Solaris, Linux (Sharp APL for Linux is free for personal use) now sold by Soliton
- Q'Nial - not very active, but Nial developed at the same time as nested arrays were being added to the language and the same principles and array theory underpin it.
- APL2C - APL to C compiler
- APLnext - for the .NET framework
What about APL keyboards and fonts?
Ah, the APL font, never quite sure if it is the bane of APL developers or one of the greatest boons the language offers.Well, a commercial interpreter will come with all the “bits” you require, but for fonts I’m going to land Adrian Smith of Causeway in it, and say that he is the expert who will point you to whatever font resources you need - I can just hear him saying “thanks” now.
A mixed bag of APL resources
- The APL Wiki
- Causeway Graphical Systems, for Rain, Causeway, Newleaf, etc.
- Bob Armstrong's CoSy page
- APL Software Team GmbH - German distributor for Dyalog
- Eke van Batenburg's APL page
- K. Smillie's Home page; Various information for J
- Learning J - web book on J by Roger Stokes, but his home page seems dead?
- Lescasse Consulting - importer, distributor for APL2000 in France
- Milinta - Software and education for a variety of APL's
- Openhere Network - Web search engine written in APL
- Rex Swain's APL Information
- Les Nouvelles d'APL - The page owner actually seems to have died! But the APL archive material remaines, with French text.
- Lingo Allegro
- Jim Weigang's Home Page
- Bob Bernecky’s Snake Island Research
- The APL FAQ page
User Groups
There are quite a few user groups around the world, but we don't have the time to maintain an up to date list, I'm afraid.- The best place to start would be Vector - the Journal of the British APL Associatio
- APL2000 run the APL Developer Forum
- There are a number of Dyalog discussion groups - you can join from their home page. These are mainly run via e-mail lists (manged by an APL system) and a Yahoo groupas well, one of the more active ones.
- The good old comp.lang.apl is available through a web-browser via Talkabout or News2Mail
- The Toronto APL User Group used to host the APL Skills Database, but they managed to lose their domain name & now that they are finally back, they are no longer maintaining the database, a great shame.
- SIGAPL the ACM special interest group are probably the best places to start.
APL in Schools
I-APL - a free educational version of APL for PC & MacAnthony Camacho
Co-Chairman, I-APL Limited
11 Auburn Road
Redland
Bristol BS6 6LS UK
It doesn’t seem to have a web site, but does have a Yahoo discussion group