APL Frequently Asked Questions (well some, anyway)
Maintained by S.W. Sirlin
Thanks to the many people who have contributed to this list.



7/11/2014 Dyalog update.



First, what is APL?

APL is the first array processing language (that I know of anyway). The following was extracted from http://www.acm.org/sigapl/whyapl.htm.

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 1979 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.

Following the old Chinese proverb that a picture is worth a thousand words, the APL symbol set is the equivalent of many words in describing algorithms or procedures. Often one or a few APL symbols (function) can have the same result as several lines of code in another computer language or of several paragraphs in English.

...See http://www.acm.org/sigapl/whyapl.htm for the rest of the article, or check out some of the web links or books listed below for more information.

Wikipedia has a good overview as well http://en.wikipedia.org/wiki/APL_(programming_language).




The questions I'm answering here are:

1. Where can I find APL for machine X?
2. How do I use APL on an XX terminal connected to machine YY?
3. What about APL keyboards/stickers?
4. Can I compile APL?
5. What tools exist for APL?
6. Can I get an APL font for X?
7. What information exists online about APL?
8. How do I get book Y?
9. What good APL books exist?
10. What user groups exist?
11. What's the latest APL conference?
12. How do I pass APL functions from one APL to another?
13. How do I write APL using only ASCII?
14. What about Unicode?



The primary format for this faq is html. I use lex and aplc to convert this to a text version that is autoposted to the newsgroup. For the (text) latest version available, see ftp://rtfm.mit.edu/pub/ (where all the autoposted faq's are archived), in particular ftp://rtfm.mit.edu/pub/usenet-by-group/comp.lang.apl/APL_language_FAQ. Another good place for faq archives is http://www.faqs.org/, with this faq at http://www.faqs.org/faqs/apl-faq/. The latest html version of this faq is at http://home.earthlink.net/~swsirlin/apl.faq.html

(1)   Q: Where can I find APL for machine X?
A:
APL SOURCES


A+ [1/2002]
A+ (aplus) 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.
http://www.aplusdev.org
http://sourceforge.net/projects/aplus/
http://www.emacswiki.org/emacs/AplInDebian A wiki describing using A+ under Debian, in emacs to get the fonts.
The BAA has had some success in porting to Windows, see http://www.vector.org.uk/aflat
APL\11
APL\11 is a freely available APL interpreter for UNIX (C), thanks to Michael Cain. Currently has some bugs. See also openAPL below. Port to FreeBSD available (email: swsirlin@earthlink.net)
email: mcain@advtech.uswest.com.

APL92
APL92 (Mac, system 7.1), older APL90:
ftp://ftp.emse.fr/pub/lang/apl/[dead 12/2005]

Jean-Jacques Girardot
School Mines
St-Etienne, France
email: girardot@cambur.emse.fr

APLette [6/16/2010]
APLette is a java program written by L. Paris that implements much of the language
See http://lparis45.free.fr/apl.html
APLNow and APLNext (APL2000, formerly STSC)[9/2008]
APL+Win (for Windows 2000 and newer), APL+WebServices, APL+WebComponent,
APL+Link Pro, APL+Linux and APL+UNIX, VisualAPL for Microsoft .Net and Visual Studio 2005/2008.

APLNow LLC d.b.a. APL2000
One Research Ct., Suite 140
Rockille, MD USA 20850
Main Tel: (301) 208-7150
Sales Tel: (301) 208-7150, Sales Fax: (301) 208-7151
Support Tel: (301) 208-7217, Support Fax: (301) 208-7151
Consulting Services Tel: (301) 208-7150
email: sales@apl2000.com
support@apl2000.com
consult@apl2000.com
http://www.APL2000.com
http://www.visualstudiogallery.com:80/ExtensionDetails.aspx?ExtensionID=6fc98bd4-2a43-43c7-9acf-bf0bf56e038e

Canadian Distributor:

APL Borealis Inc.
900 Mt. Pleasant Rd., #1501
Toronto, Ontario Canada M4P 3J9
Tel: (416) 488-7828
Tel: 1-866-888-6377
email: info@aplborealis.com
http://www.aplborealis.com

International Dealers:

http://www.apl2000.com/intldealers.php


APLX (was APL.68000)[5/2004]
APLX 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 pc's, PowerMac, Amiga). APLX for Linux is free for non-commercial use.

MicroAPL Limited
The Roller Mill, Mill Lane
Uckfield, E. Sussex
TN22 5AA, UK
Tel: (+44) 1825 768050, FAX: (+44) 1825 749472
email: microapl@microapl.co.uk
WWW: http://www.microapl.co.uk


APLSE
APLSE/LRNAPLSE (APL*PLUS v10 freeware, PCDOS, W95/98, NT):
APLSE is a version of Manugistics/STSC's PC APL, available with very little documentation. It can be found at [5/2005]
http://home.comcast.net/~paul.l.jackson/APL/
http://ftp.gwdg.de/pub/misc/languages/apl/apl-plus/
http://www.math.uwaterloo.ca/apl_archives/apl/apl-plus/index.html

LRNAPLSE is a package including APLSE, on-screen lessons (with additional documentation), and the APL*PLUS Demo (more documentation). Ask for a catalog of APL books and software from Dick Holt, dick_holt@email.com

Fonts under W95, WNT, (WME?) are troublesome. Here is some information from Allan Zenth (allan.zenth@tryg.dk):

I tried to use APL-PLUS v.10 (essentially the same as APL SE) under Windows 95 and Windows NT. I don't know about Windows ME.

First the bad things: You cannot work in a window with symbols (only full-screen) and using a code-page for symbols is not possible in NT. The difficult thing is to have a stable full-screen situation and the most difficult was NT.

1) Make a short-cut on the screen to the apl.exe file. Go into the properties (right-click on the icon).
2) On the program-page refer to the bat-file in the command-line field an set run to maximized
3) On the memory-page I use 1MB in EMS, XMS & DPMI - perhabs not important 4) On the screen-page set full-screen
5) On the misc-page remove the check-mark for Ctrl+Esc - Important to have in APL
6) Go into C:\WinNT\Pif and make sure, that you have the same short-cut here
7) Here should also be a short-cut for your font.com:
7a) On the program page refer to the file itself on the command-line, set run to maximized and remove the mark in "close on exit" (important!!)
7b) The same alterations on the other pages as above.
8) If you use aplprint.com for function-printout it should be treated as font.com

Try to use this method in Windows ME - it might be the way out.


APL*PLUS II/VMS, Statgraphics
This was distributed by Manugistics (formerly STSC) but now has been taken over by APL2000 (above).

Manugistics
2115 East Jefferson St.
Rockville, Maryland, USA 20852
Tel: 800-592-0050, 301-984-5000, 301-984-5412, 301-984-5123
Fax: 301-984-5094
email: support: answer@manu.com
international: intl@manu.com
BBS: 301-984-5222

APROL
APROL (Scheme/J mix):
For information (7/15/98):
http://www.cs.trinity.edu/~jhowland/aprol.paper.ps
email: jhowland@ariel.cs.trinity.edu

CAPLIB2
CAPLIB2 (Linux, DOS, HPUX, can be ported to other Unix) GPL interpreter, C library

Thomas Glen Smith
3154 W. Shady Lane
Neenah, WI
email: 76207.3343@CompuServe.com
http://www.math.uwaterloo.ca/apl_archives/apl/CAP/index.html

http://www.apl2.de/ Possible future development


D4 [8/2000]
D4 (IBM PC, Windows, Linux). Unix like shell for windows

The shell is writen in D4, a dialect of APL http://www.d4maths.lowtech.org For more information contact the author Tony Goddard email:cat@animal.u-net.com


DEC [4/2014]
APL-11 (PDP), VAX APL V4.0:

Digital Equipment Corporation (DEC) was bought by Compaq in 1998, which was bought by HP in 2002. The APL products seem to be no longer available. Note that some code is available from http://www.trailing-edge.com including binaries for APLSF, and the source code for APL-11.


Dyalog APL [7/2014]
Dyalog APL (Win 2003/XP onwards, AIX, Linux, Solaris, PocketPC 2002). Available free for educational use. Free unregistered Windows version available for non-commercial use.

Source:

Dyalog Ltd.
Minchens Court, Minchens Lane, Bramley
Hampshire RG26 5BH, UK
Tel: +44 (0) 1256 830 030
http://www.dyalog.com

Email : sales@dyalog.com
Resellers: http://www.dyalog.com/resellers.htm



FreeAPL
IBM PC, MS Windows, version of APL\11

Tauno Ylinen, email: tylinen@mits.mdata.fi
http://www.pyr.fi/apl/index.htm


Glee
Glee is an APL descendent, for MS Windows

http://withglee.com/


GNU APL
GNU APL is a free interpreter APL. Should compile under most unix, windows under CYGWIN. A Linux RPM and Debian package are available.

The APL interpreter is an (almost) complete implementation of ISO standard 13751 aka. Programming Language APL, Extended. The APL interpreter has implemented:

  • nested arrays and related functions
  • complex numbers, and
  • a shared variable interface
In addition, GNU APL can be scripted. GNU APL was written and is being maintained by Jürgen Sauermann.

http://www.gnu.org/software/apl/
http://www.gnu.org/software/apl/Community.html


I-APL
IBM PC, Mac, some other PCs (free*):

In the US (may require lots of patience):

Edward M. Cherlin
Co-Chairman, I-APL Limited
6611 Linville Drive
Weed, California, USA 96094-9763
Tel: (916) 938-4684, Fax: 916/938-3229
email: Cherlin@snowcrest.net

In the UK:

Anthony Camacho
Co-Chairman, I-APL Limited
11 Auburn Road
Redland
Bristol BS6 6LS UK


IBM APL2 [11/09]
APL2 for Windows, AIX, Linux, Solaris and Mainframes

APL Products and Services
IBM Silicon Valley Lab, Dept. H36/F40
555 Bailey Avenue
San Jose, California 95141, USA
Tel: 408-463-APL2 (408-463-2752), FAX: 408-463-4488
email: apl2@vnet.ibm.com
web page:http://www.ibm.com/software/awdtools/apl
forum:https://www.ibm.com/developerworks/forums/forum.jspa?forumID=2104
documentation:http://www-306.ibm.com/software/awdtools/apl/library.html
ftp site:ftp://ftp.software.ibm.com
IBM support site. Look in /ps/products/apl2

Products:
From 1-800-IBM-CALL or ibm.com
Workstation APL2 Version 2 (Windows, AIX, Linux, Solaris) is IBM Program Product Number 5724-B74
APL2 Version 2 (CMS, TSO) is Program Number 5688-228
APL2 Application Environment for CMS/TSO is Program Number 5688-229


INCA
INCA [4/2014],

A tiny APL-style array calculator/interpreter in C based on the J-incunabulum

https://github.com/luser-dr00g/inca

J
J (for Linux, Mac, Windows, WindowsCE) [7/2008],

Produced by:

Jsoftware Inc.
http://www.jsoftware.com
email: info@jsoftware.com

An early version of J (J7, about 1994) is available on waterloo. Early inspiration came from an interpreter fragment from Arthur Whitney http://www.jsoftware.com/jwiki/Essays/Incunabulum
K
K, Kdb; an APL derivative for Solaris, Linux, Windows

Kx Systems
http://www.kx.com


MacAPL
Macs (?) version 2.11 (I don't know much about this yet)

Michael C. O'Connor
Leptonic Systems Co.
405 Tarrytown Rd., White Plains, NY 10607
Tel: (914) 682-0377
version 1.13
ftp://ftp.uwtc.washington.edu/pub/Mac/Programming/Languages/ (no longer: ftp://ftp.ens.fr/pub/mac/hqx/ )


NARS2000 [7/2009]
NARS2000 is a freely available open source APL interpreter for Windows 2000 and later versions as well as various versions of Linux using Wine (http://www.winehq.org/) as a translation layer. NARS2000 is an Experimental APL Interpreter being worked on by members of the APL community. Available in 32 bit and 64 bit versions.
http://www.nars2000.org
email:sitemaster@nars2000.org
wiki:http://wiki.nars2000.org
Forums: http://forums.nars2000.org


ngn APL [7/2014]
An APL implemented in CoffeeScript. Runs on NodeJS or in a browser. In development.
https://github.com/ngn/apl
Demo: http://ngn.github.io/apl/web/
openAPL
New (11/98) version of apl\11 (above). Alpha release, under GPL (free source). Ported to Linux/X11
ftp://sunsite.unc.edu/pub/Linux/devel/lang/apl
Branko Bratkovic, South Australia.
email to branko at senet dot com dot au
Now (7/2005) in development at sourceforge by Peter Jeremy (mangled mail address: pzextcevrbjeremy@zxcvb.optushome.com.au): http://sourceforge.net/projects/openapl

Parrot APL [11/2006]
APL is one of the languages part of the parrot project - a generic interpreter backend with more than 30 languages included (Perl, Ruby Basic, Scheme etc). GPL (free source). Unix +.
http://www.parrotcode.org/


Q'Nial [12/4/2006]
Q'Nial is a highly portable interpreter for Nial originally developed at Queen's University, Kingston, Canada in the early 1980s. NIAL stands for the Nested Interactive Array Language, a hybrid language combining a functional array language based on Trenchard More's mathematical treatment of nested arrays called Array Theory, with a procedural language with familiar control structures. Q'Nial is open source, with versions available for Unix and Windows.
NIAL Systems Limited
46 William St.
Kingston, Ontario
K7L 2C4
http://www.nial.com/
email: jenkins@nial.com


SHARP APL
SHARP APL (MVS, AIX, SunOS, Solaris, Linux [1/02])
Sharp APL for Linux is free for personal use; other products are Viewpoint, LOGOS, Mailbox

Soliton Associates Limited (Formerly I. P. Sharp Associates)
44 Victoria St, Suite 2100
Toronto, Ontario, Canada M5C 1Y2
Tel: (416) 364-9355 Fax: (416) 364-6159
email: sales@Soliton.COM
http://www.soliton.com

Soliton Associates, Inc.
1100 University Ave., Suite 111
Rochester, NY 14607
USA
Tel: (716) 256-6466, Fax: (716) 256-6469

Soliton Associates Limited
Havsgaardsvej 4
2900 Hellerup
Copenhagen, Denmark
Tel: +45 2621 6099, Fax: +45 3940 1641
email: benoit_paquin@soliton.com

WatAPL
Watcom [4/2014]

Watcom developed a variety of languages including APL in the early 1980s. Some are now becomming open source at OpenWatcom. Watcom APL by GEMESYS Ltd. is a free, full featured APL for Android. See the google play store or

https://play.google.com/store/apps/details?id=org.gemesys.android.watapl



(2)   Q: How do I use APL on an XX terminal connected to machine YY?
A:
Terminal Emulation


Apex Computer Specialists
APL Key Boards and key caps for MG800/T7000 terminals, for WICAT/MCS systems, as well as terminal with both the ASCII and APL character codes.

Bert Arias
Apex Computer Specialists, Inc.
1502 West 400 South, Suite #2
Orem, UT 84058-5100
Tel: 888-887-2739, Ext. 3357
Int.l 1-801-223-3357
Fax: 801-223-9955
e-mail: barias@apexcs.com


Chameleon
Chameleon TN3270 for Windows, networks, IBM 3179G and 3192G emulation, SAA, APA graphics.

NetManage
10725 De Anza Blvd., Cupertino, CA 95014, U.S.A.
Tel: 408/973-7171
Fax: 408/257-6405
email: Donna@NetManage.com


EXTRA!
EXTRA! Extended for DOS or EXTRA! for Windows.
Includes APL2 character set in both. DOS product works under Windows.

Attachmate Corporation
13231 S.E. 36th Street
Bellevue, Washington 98006 USA
tel. (800) 426-6283
(206) 644-4010 in Washington State


IBM Terminal Emulator
IBM Terminal Emulators with APL Support:
AIX: AIX X-Windows 3270 Emulator/6000 (X3270) Program Number 5765-011
DOS/Windows: PC/3270 Version 3, Version 4 9/30
OS2 Extended Services Communications Manager: Includes the CMAPL Application Aid. Requires APAR fixes after the Graphics Engine CSD is installed.
OS2 Communications Manager/2 (CM/2): APL Support is available in Version 1.11

IRMA
IRMA (PC) ??

Digital Communications Associates, Inc. 1000 Alderman Drive Alpharetta, Georgia 30201-4199 USA tel. (770) 442-4000


PuTTY
http://www.chiark.greenend.org.uk/~sgtatham/putty/
A free implementation of Telnet and SSH for Windows and Unix platforms. Can be used as an APL terminal emulator when used in conjunction with the APL385 font and the Dyalog UnicodeIME (available from http://www.dyalog.com/apl-font-keyboard.htm).

RUMBA
RUMBA (for 3270, APL and graphics)

Wall Data
17769 NE 78th Place
Redmond WA 98052-4992
206-883-4777
Apparently available here:http://www.microfocus.com/products/RUMBA/RUMBAMainframe.asp.
rxvt
OpenAPL has support for X11 terminals, but this may not match character orderings for other APLs.

Sun
Sun reportedly has a very good emulator (dtterm) for SunOS 4 and Solaris 2 which emulates an IBM 3179G APA colour graphics terminal. Part of CDE, so probably obsolete.

TN3270 [2/2010]
TN3270 (Macintosh) Not public domain, but may be freely distributed. Works with TCP/IP

See the homepage at Brown http://www.brown.edu/cis/tn3270/

May also be here? ftp://ftp.ncsa.uiuc.edu/

BITNET distribution from LISTSERV@BROWNVM:
Send LISTSERV the command GET TN3270 PACKAGE. GET LOCAL FILELIST for a complete list of available files.


x3270 [2/2010]
x3270 for Unix systems (Linux, Solaris,...)
A free 327x emulator with APL support. Get the source from http://x3270.bgp.nu/download.html, or see the home page at http://x3270.bgp.nu/. An older version is here ftp://ftp.x.org/contrib/applications.

YTERM
YTERM For PC, supports IBM, VAX, TCP/IP with APL/APL2 chars. [?]

Yale University Computing & Information Systems
Software Distribution
175 Whitney Avenue
New Haven CT 06520
Tel: (203) 432-6600 Fax: (203)-432-6165

LISTSERV@YALEVM
http://www.uic.edu/depts/adn/infwww/txt/v3113001.txt


Z-Stem [?]
Z-Stem, a series of VT (e.g. VT240) emulators, for MSDOS PC/VAX-11

KEA Systems
3738 North Fraser Way, Unit 101
Burnaby, British Columbia
Canada, V5J 5G1
(604) 431-0727




(3)   Q: What about APL keyboards/stickers?
A:
APL Keyboards/Keycaps


APL keyboard
IBM/Lexmark keyboard, part no. 60G3571 or KB-571, (Professional 101-key keyboard about $90)
APL2 Keycaps, US and UK base set (about $46)SX80-0270
APL2 Keycaps, German Upgrade to SX80-0270 SX80-0452
APL2 Keycaps, German Upgrade to SX80-0270 SX80-0453
APL2 Keycaps, French Upgrade to SX80-0270 SX80-0454
APL2 Keycaps, Italian Upgrade to SX80-0270 SC33-0604
APL2 Keyboard Decals (about $13 for set of two)

Keycaps and decals are "publications" - order at 800-879-2755

Dyalog keyboard
US, UK and Danish available. Other languages would be considered if the demand was great enough. Contact Dyalog for more information.
Keyboard stickers, custom replacement key caps
Hooleon Corp.
P.O. Box 230
Cornville, AZ 86325
Tel: (602) 634-7515
Fax: (602) 634-4620


Keyboard stickers
APL2000 Inc. (see above address)

On-screen Maps
KEYBOARD.AWS: APL*PLUS pop-up color keyboard diagram at the touch of a PF key. Incorporate it in any .AWS. Ask for catalog from email:dick_holt@email.com



(4)   Q: Can I compile APL?
A:
Compilers


APL2C
APL2C compiler/translator and interpreter, for Microsoft Windows 9x/NT/2000, written by Dr. Tilman P. Otto
http://www.apl2c.com
email: otto@apl2c.com

APL to C
APL to C conversion and compiler - I've heard this is out of business these days.
Sofremi-AGL
6. rue Paul Bert
92800 Puteaux - France
(1) 47.72.25.13 + Telex: 612 651 F


IBM 370 APL*PLUS
Manugistics compiler for IBM 370 APL*PLUS, documented in APL '85.
see Manugistics listing above, or email aplsales@manu.com.

VisualAPL
VisualAPL from is a .Net language integrated with Microsoft Visual Studio 2005/20008 which provides for both compilation and scripted/interpreted code http://www.visualstudiogallery.com/ExtensionDetails.aspx?ExtensionID=6fc98bd4-2a43-43c7-9acf-bf0bf56e038e
Experimental:

APEX
Robert Bernecky's APEX compiler:
Snake Island Research Inc.
http://www.snakeisland.com/[9/2003]
email:bernecky@acm.org

APLc
Tim Budd's APLc:
anonymous login to ftp.cs.orst.edu, cd users/b/budd, or http://www.cs.orst.edu/~budd and look under books. (latest C++ version unavailable?)

Sam Sirlin's current modification of Budd's older aplc

  • ported to Solaris, Freebsd, Atari, Linux, Dec Alpha
  • support for most of ISO APL, control structures, boxed arrays
  • support for hypercomplex numbers (ordinary complex, quaternions, octonions)

v5.12 is stable version (mostly flat APL)
v6.14 is the development version (anonymous fns, more operator support)
See http://home.earthlink.net/~swsirlin/apl.html or send mail to swsirlin@earthlink.net asking for it
CAPLIB
Thomas Glen Smith's CAPLIB2 package, while not strictly a compiler
Has C procedures corresponding to APL functions/operators (see above)

PLJsAPL
Paul Jackson's Free APL compiler, written in .net, is available from https://home.comcast.net/~paul.l.jackson/PLJsAPL/

A list of references on APL compilation is available ftp://archive.uwaterloo.ca/languages/apl/bibliography/compilers.html[dead 3/2006]


(5)   Q: What tools exist for APL?
A:
Other tools for APL


Dino database for huge amount of data,
Saurus tools for multidimensional databases
Dinosoft Oy
Lonnrotinkatu 21 C
00120 HELSINKI, Finland
Tel: +358 9 70028820, Fax: +358 9 70028824
email: dinosoft@dinosoft.fi
http://www.dinosoft.fi/

IEDIT (APL2 editor),
AFM file system,
APL2 tools
[dead 3/2006]
Interprocess Systems, Inc.

Insight Systems [4/2000]
SQAPL, an interface to SQL databases via ODBC or SequeLink, a spreadsheet manager, and a number of other APL tools available for many APL systems. Dealers for Dyalog APL, APL+Win from Cognos/APL2000, APL2 from IBM, J from Jsoftware, Causeway Products.

Insight Systems ApS
Nordre Strandvej 119G
DK-3150 Hellebaek, Denmark
Tel: +45 7026 1326
FAX: +45 7026 1325
http://www.insight.dk
info@insight.dk


Computer Aided Instruction
Computer Aided Instruction, for PC or mainframe IBM. Also a newsletter.

Zark Incorporated
23 Ketchbrook Lane
Ellington CT 06029 USA

Converting CSV files to APL

Some functions for converting Comma-Separated-Value (CSV) files (e.g. from spreadsheets such as excell) to APL http://aplwiki.com/CsvToApl




(6)   Q: Can I get an APL font for X?
A:
Besides commercial products that come with the interpreters, there are:

  1. Fonts for TeX, laTeX, the X windows system, postscript, and truetype (windows) are available. See http://www.math.uwaterloo.ca/apl_archives/apl/fonts[4/2009]

  2. Truetype fonts for windows are available from ISI.

  3. Dyalog's fonts for Windows are available from http://www.dyalog.com/resources.

  4. Truetype fonts: Dyalog APL and Vector APL are available gratis, if you send a blank, formatted disk:
    Adrian Smith
    Brook House, Gilling East, YORK
    England -- U.K.
    (See his article in the April 1993 issue of VECTOR journal)

  5. STSC, now Manugistics, used to distribute a rom chip with the APL characters for use in old monochrome adapters (now almost extinct). There's also code called SIMCGA.COM, that makes an old Hercules act like a cga (itself pretty old).

  6. Fonts from several vendors are available for use (free of charge) in preparing articles for APL Quote Quad, APL conference proceedings, or other educational articles. This can be found on the ACM SIGAPL Web site. Word processing Templates to aid the author in preparing articles for conference proceedings or for submission to APL Quote Quad can also be found on the ACM SIGAPL web site.

  7. Paul Houle has made a DOS window font file suitable for use with old STSC APL's available here [5/17/04]: http://paulhoule.com/stscfon/index.htm

  8. Paul L Jackson's pljtools.zip contains DOSAPP.FON which if put in the Windows\Font directory, will provide an 8x16 APL font for a DOS window. This should work for various MS Windows products and APLSE. This is available at waterloo http://www.math.uwaterloo.ca/apl_archives/apl/apl-plus/index.html and (with APLSE) [5/05]:
    http://home.comcast.net/~paul.l.jackson/APL/

  9. A variety of fonts and tools is available from Vector: http://www.vector.org.uk/resource

  10. Emacs can display APL fonts, see http://www.emacswiki.org/emacs/AplInDebian

  11. Unicode fonts such as https://www.gnu.org/software/freefont/ can display APL glyphs


(7)   Q: What information exists online about APL?
A:
Online information, free* APLs & WS

  1. Anonymous ftp servers:

  2. Web Sites:

  3. Wiki -- websites that allows visitors to add, remove, and edit content

  4. Mail servers

    listserv@listserv.unb.ca (listserv@unb.ca), in the list APL-L, archives of comp.lang.apl ftpmail@decwrl.dec.com - mail access to waterloo, gatekeeper

  5. Mail servers/lists

    BITFTP@PUCC.BITNET - access to waterloo?

    Access to the APL-L on bitnet from the internet can be done via mail:

            To: listserv@unb.ca
            Subject: SUBSCRIBE APL-L
            SUBSCRIBE APL-L
    DyalogAPL t-chan@u-aizu.ac.jp for Dyalog users
    APL-ERS APL-ERS@IRLEARN.BITNET UCD APL Interest Group "virtually extinct"
    APL-L APL-L@UNB.CA, APL-L@UNBVM1.BITNET (broken?) APL Language Discussion (mirror of comp.lang.apl)
    APLEDU-LAPLEDU-L@UNBVM1.BITNET APL in Education
    A+http://www.aplusdev.org/Lists/index.html A+ mail list, archive
    J Forumhttp://www.jsoftware.com J mail list, archive

  6. Inquiries about the ISO APL standards should be addressed to your national standards body, or to any delagete from your country. If you can not find out who that is, you may ask Lee Dickey at ljdickey@math.uwaterloo.ca (SC22 WG3 attendees)

  7. SIGAPL Software Library

    New Name, New Addresses:

    SIGAPL has made major changes in its software distribution system. The SIGAPL Software Library replaces what was formerly known as the "Software Exchange." SIGAPL wants to make array processing software much more widely available and easy to get. We want it to be decoupled from annual APL conferences, available year-round, unbundled by interpreter, and electronically free. Thanks to Lee Dickey at the University of Waterloo, this software is now available at:

    APL96 Conference Software Highlights:

    MERLIN Two new AWS mind bogglers (Langlet, FR)
    GRAN AWS []G Graphics (Buzin, RU)
    NFILES W3 Long file names, National Characters (Glantz, SE)
    APL2OS2TAPL2/2 Tutorial for OS/2 (Jizba, US)
    APLSE Free APL*PLUS v10 Interpreter (Manugistics/APL2000)
    LRNAPLSEAPLSE Tutorial & Documentation (Holt, US)
    UNLOCK-DUnlock locked fns in any small AWS (Holt, US)
    SL-GuideHow to add to the SIGAPL Software Library

    SIGAPL Software Guidelines:

    The SIGAPL Software Library (SL) is the premier venue for APL, J, and other array-oriented authors to display their programming ideas and skills, and for vendors to showcase their demos and products. APL and J software authors and vendors are invited to send their material on a 3.5 ″ DOS disk to:

    Lee Dickey, Mathematics Department
    University of Waterloo
    Waterloo Ontario
    Canada 2NL 3G1

    Tell him that it's for the Software Library. You may send your software at *any* time of the year. FTP upload is available on demand. Write to Lee Dickey at ljdickey@math.uwaterloo.ca

    SIGAPL's updated Software Library guidelines are:

    • Include an ASCII file (call it WSNAME.TXT) to describe what the software does, and what hardware and software is needed to use it. English is preferred, and other languages are welcome.

    • Think electronically. Your software needs to be packaged as a stand-alone product for electronic distribution. Good documen- tation adds real value to your software.

    • Put all of your material in one single .ZIP file for easy FTPing.

    • Include any needed copyright permissions. Copyrighted software can't be distributed without permission.

    • If possible, provide APL software in both its original form and as an APLACSCII file. APLASCII software (v1.4) is available for all major APLs at the electronic sources listed above.

    • Check your software for viruses. Archive.waterloo.ca will also check your software for viruses.

    • Authors should pay special attention to the quality, usefulness, and documentation of their work, and should include their name and address (including email).

    • Significant improvements and major updates of prior SL software are welcome.


(8)   Q: How do I get book Y?
A:
Sources of Publications/Books



(9)   Q: What good APL books exist?
A:
Reference Books

References - books mentioned on the net or that someone has recomended, not all of which are available:

For another list online see: http://www.math.uwaterloo.ca/apl_archives/apl/bibliography/index.htmlNot fully working yet [11/2006]

  • APL"nn" Conference Proceedings - The annual ACM/SigAPL conference proceedings, published yearly from 19?? (APL??) to date (APL96) as an issue of APL Quote Quad; replace nn by the appropriate last two digits of the year.

  • Ajay Askoolum, "System Building with APL + WIN," Wiley, ISBN: 0-470-03020-8, August 2006. Available at http://www.amazon.com/System-Building-APL-WIN-RSP/dp/0470030208 and other sources.

  • Brown et. al. "APL2 at a Glance," Prentice Hall, ISBN 0-13-038670-7.

  • T. Budd, "An APL Compiler," Springer-Verlag.

  • Maurice Dalois, "Introduction to APL*PLUS PC," available from EducAPL, US$30, US$10 for overseas shipping.

  • J. Ever and C. Fair, "Guidelines for APL Systems," DPD 22 IBM 037301, March 1976.

  • Gilman and Rose, "APL - An Interactive Approach," Wiley, ISBN 220-471-30022-5.

  • Ulf Grenander, "Mathematical Experiments on the Computer," Academic Press, 1982, ISBN 0-12-301750-5.

  • Kent Haralson, Useful APL Defined Functions, IBM Technical Report, TR 00.2409, Feb. 8 1973.

  • Timothy Holls, "APL Programming Guide," IBM G320-6103, 1978, and G320-6735, 1981, (out of print?).

  • IBM, "APL2 Programming: Language Reference" (Version 2, SH21-1061; Version 1, SH20-9227 (DOS only)).

  • IBM, "The APL Handbook of Techniques", IBM publication number S320-5996, April 1978. Includes routines for multi-precision integer and float operations.

  • The IBM System Journal, V. 30, No. 4 (1991); Special Issue Devoted to APL.

  • IBM online references: http://www-306.ibm.com/software/awdtools/apl/library.html

  • A.D. Falkoff, K.E Iverson, E.H Sussenguth, "A formal description of System/360,"
    The IBM System Journal, V. 3, No. 3 (1964)

  • K. E. Iverson, A Programming Language, Wiley, 1962.

  • K. E. Iverson, Algebra : an algorithmic treatment, APL Press 1977, Copyright 1972 by Addison Wesley, Preliminary Edition entitled "Elementary Algebra" Copyright 1971 by IBM Corporation.

  • K. E. Iverson, Elementary analysis, APL press 1976, Preliminary Edition "Elementary Functions" Copyright 1974 by IBM Corporation ISBN 0-917326-01-6

  • K. E. Iverson, An introduction to APL for Scientists and Engineers, APL Press 1976, First published by IMB Corporation as Technical Report No 320-3019 March 1973 - ISBN 0-917326-04-0

  • K. E. Iverson, APL in exposition, APL Press 1976, First published by IBM Corporation as Technical Report No 320-3010 March 1973 - ISBN 0-917326-02-4.

  • K. E. Iverson, Introduction To APL, (1984-APL Press Palo Alto) ISBN 0-917326-14-8.

  • K. E. Iverson, "A personal view of APL," IBM Systems Journal, Vol. 30, No. 4, 1991.

  • K. E. Iverson, Concrete Mathematics Companion.

  • S. Kamin, "Programming Languages: An Interpreter-Based Approach," contains (among other things) toy implementations of Lisp, APL, Scheme, SASL, CLU, Smalltalk, and Prolog, Addison-Wesley, 1990, ISBN 0-201-06824-9.

  • Bernard Legrand, "Les APL Etendus," Masson, Paris, 1994. An introduction to modern APL (French).

  • Bernard Legrand, "Mastering Dyalog APL - A Complete Introduction to Dyalog APL," ISBN-10: 0956463800 / ISBN-13: 978-0956463807 Available for download from http://www.dyalog.com/mastering-dyalog-apl.htm, or can be purchased from Amazon (see link on http://www.dyalog.com/intro/).

  • Jon McGrew, "An Introduction to APL2," IBM (SH20-9229).

  • James A. Mason, "Learning APL: An Array Processing Language," Harper & Row Publishers Inc., New York, 1986, ISBN 0-06-044243-3 260 pp.

  • Peelle, APL an Introduction, Holt, Rinehart & Winston, ISBN 0-03-004953-9.

  • Reiter & Jones, APL with a Mathematical Accent, Brooks/Cole ISBN 0-534-12864-5, (now being distributed by Chapman & Hall).

  • C. Reiter, Fractuals Visualization and J, Iverson Software, Inc, 1995 ISBN 1-895721-11-3.

  • Adrian Smith, "APL, A Design Handbook for Commercial Systems," Wiley series in information processing, Wiley & Sons, 1982, ISBN 0-471-10092-7.

  • D. Stiers, M.J. Goovaerts, J. De Kerf, "APL - The Language and its Actuarial Applications"

  • Norman D. Thomson, Raymond P. Polivka, "APL2 in Depth," Springer-Verlag, 1995, ISBN 0-387-94213-0 ($39.95).

  • Jerry R. Turner, "APL IS EASY!," Manugistics, 1993.

  • "SHARP APL Reference Manual," 2nd ed., Soliton Associates Limited PC Version: Iverson Software, 1993, ISBN 1-895721-07-5.

  • Jim Weigang, "APL Notes," An introduction to APL that includes 16- and 32-bit APL*PLUS
    interpreters. For orders and more information, see:
    http://www.chilton.com/~jimw/aplnotes.html

  • "A Source Book in APL," APL Press, 1981, ISBN 0-917326-10-5.

  • "J Phrases," Iverson Software, 1996, ISBN 1-895721-12-1

  • "Exploring Math", Iverson Software, 1996, ISBN 1-895721-13-X

  • "J Primer," Iverson Software, 1996, ISBN 1-895721-14-8


(10)   Q: What user groups exist?
A:
User groups

Note that information on officers may be somewhat out of date.


ACM/SIGAPL
Association for Computing Machinery / Special Interest Group on APL, international membership.
Quarterly journal Quote Quad. Chapter groups around the country.

Association for Computing Machinery
1515 Broadway
New York, NY 10036
Tel: (212) 626-0500
email acmhelp@acm.org
                             CALL FOR PAPERS [8/30/2005]
                              APL QUOTE QUAD

The next issue of APL Quote Quad is being designed. Prospective authors
are encouraged to submit papers on any of the usual subjects of
interest related to Array-Processing Languages (APL, APL2, J, and so
forth). Submitted papers, in Microsoft Word (.doc), Rich Text Format
(.rtf), Openoffice format (.scw), Latex (.tex) or Acrobat (.pdf)
should be addressed to 
                             Manuel Alfonseca
                         Manuel.Alfonseca@uam.es
with copy to:
                             Antonio Annibali
                       Antonio.Annibali@uniroma1.it
                             and Mario Sacco
                         mario.sacco@acm.org

Care must be taken to make the submitted papers self-contained,
eg. if they require special APL typesettings. The tentative time limit
for the new material is September 30th, 2005.

APLBUG [10/12/2013]
APL Bay Area Users Group, Northern California ACM SIGAPL
Meets irregularly.
Chairman:Chuck Kennedy
(408)241-2920
Charles-Kennedy@comcast.net
Vice Chairman:Charles Schulz
caschulz@earthlink.net
Secretary/Treasurer:Curtis Jones
228 South 15th Street
San Jose, CA 95112-2150
curtis_jones@ieee.org

BACUS
Belgian APL CAM Users Society
APL CAM Journal (4 issues / year in French, Dutch, English) and other publications. fee: 500 BEF
c/o Joseph De Kerf
Rooienberg 72
B2570 Duffel BELGIUM
tel.: 32-15-31 47 24

BAA (11/1/98)
BAA British APL Association, a specialist group of the British Computer Society, international membership.
Quarterly journal VECTOR maintains a comprehensive vendor and product list. See the vector page for current information: http://www.vector.org.uk
Chicago APL SIG
Larry Mysz
Chicago APL SIG
836 Highland Drive
Chicago Heights IL 60411, USA
email: 73040.3032@compuserve.com
Connecticut APL group
Bob Pomeroy
Mass Mutual Life
1295 State Street
Mail Drop F465
Springfield MA 01111 USA
Tel: +1 413 788 8411 x2838

Denmark
APL Special Interest Group of the Danish Data Association (DDA) [4/2000]
Helene Boesen
email: hb@insight.dk
Dutch APL User Group [perhaps defunct? 8/2010]
APL Werkgroep Nederland
President:
Theo Zwart
OASIS
Lekstraat, 4
NL3433 ZB Niewegein
The NETHERLANDS

Tel: +31 3402 66336
Fax: +31 3402 65844
Secretary:
B. Smoor
Dorpstraat 50
4128BZ Lexmond
The Netherlands
Also contact: Eke Van Batenburg

AFAPL (1/2005)
Association Francophone pour la promotion du langage APL
Les Nouvelles d'APL (journal 4/year) and other publications in French. fee: 350 franch francs in France, 450 FF abroad, 2800 FF for firms.
174, bd de Charonne
75020 PARIS
FRANCE
Tel & Fax: (33)-1-43-56-31-79)
President:Jacques Bouchard
General Secretary:Ludmila Lemagnen

email: lemagnen@aol.com
www: http://www.afapl.asso.fr


APL Germany [10/2010]
c/o Dr. Reiner Nussbaum
Buchernerstr. 78
D-69259 Mannheim, GERMANY
Tel: +49 621 7152190
email: info@apl-germany.de web: http://apl-germany.de

Groupe APL-J\Québec (Quebec)[11/13/98]
APL user group in Québec (city)
Gilles Kirouac, président
Quebec, Canada
email: gkirouac@riq.qc.ca
Japan APL Association (JAPLA)
Japanese APL/J interest group.
Monthly meetings at every 3rd Saturday and hold study APL /J.
Currently published JAPLA's journal 2 times / year. We welcome to our associate member who has an interest in APL/J.
JAPLA's Office:
c/o PRIDE
Masujima Bldg.
1-8-13, Higasi Gotanda,
Shinagawa ku,
Tokyo, 141 JAPAN
Tel: 81-3-3280-0411
Fax: 81-3-3280-0418
Chairman:
Dr. Tosio Nishikawa
Laboratory National Chemical for Industry
Higashi 1-1, Tsukuba, Ibaraki, 305, Japan
International Interface:
Masafusa Yasuda
2-4-10, Nogata,
Nakano ku,
Tokyo, 165, JAPAN
Tel/Fax: 81-3-3319-1956
email: myasuda@mix.or.jp

APL Club Oesterreich
APL Club Oesterreich
Obere Donaustrasse 95
A-1020 Wein, AUSTRIA

Rome/Italy ACM SIGAPL
Casella Postale 14343
00100 - Roma Trullo, ITALY

Chair:Mario Sacco
email: marsac@vnet.ibm.com
Additional contact:David Lanari
Universita di Perugia
Piaza dell'Universita 2
Via G. Verga 30
I06100 Perugia, ITALY

email: david@ipguniv.bitnet

NY/SIGAPL [revised 8/10/98]
The New York City local chapter of ACM SIGAPL.
Monthly meetings (ex July/August), newsletter "Big Apple APL", "APL as a Tool of Thought" miniconferences, approx. annual.
Dues $35, $25 for ACM or ACM SIGAPL members, $10 for students.
PO Box 2697
New York,
NY 10163-2697
USA
Chairman: David E. Siegel
Tel: 609-734-9554 (work)
email: Siegel@acm.org
Newsletter editor: Jim Boyd
Tel: +1 914-941-9239
email: jhb@acm.org
Membership chairman: Lynne C. Shaw
Tel: +1 212-662-2406
email: shaw@acm.org

Potomac ACM SIGAPL
The Potomac ACM SIGAPL Chapter has been inactive since August 1996. For information about Potomac SIGAPL, send email to Dick Holt (dick_holt@email.com).
SEAPL
South East APL Users' Group
Doc Manges
SEAPL Newsletter Editor
email: SEAPLDOC@aol.com
Tel: 770-972-3755
413 Comanche Trail
Lawrenceville GA 30244
Other contacts:
Gordon and Stella Chamberlain
Interprocess Systems, Inc.
http://www.interprocess.com/[dead 12/2005]
SOCAL-SIGAPL
SOCAL-SIGAPL Southern California APL user's group. Inactive. [7/2004]
Editor: Arthur J. Stasney
Contacts: astasney@earthlink.net (Arthur J. Stasney)
jizba@gte.com (Zdenek V. Jizba)

SovAPL
Alexander O. Skomorokhov
P.O. Box 5061
Obninsk - 5
Kaluga Region
RUSSIA
email: askom@apl2.obninsk.su

Dr Alexander Skomorokhov
Obninsk Institut of Nuclear Power/IATE
Studgorod 1
Obninsk
Kaluga Region 249020
RUSSIA
Tel: +7 084439 31463
Fax: +7 095 2552225
email: askom@apl2.obninsk.su
Suomen APL
Suomen APL-yhdistys ry (Finn APL Association) about 4 informal newsletters/year, mainly in Finnish, one English issue/year.
Membership fees,per year: 100 Fmk (about 20 $). (March 1998)
Address: Box 1005, 00101 Helsinki, Finland
Chair:
Timo Korpela (1998)
The Central Pension Security Institute
SF-00065 Elaketurvakeskus, Finland
Tel: +358 9 1512164, Fax: +358 9 1512496
http://www.pyr.fi/apl/index.htm

SWAPL
SWAPL -- SouthWest APL Users' Group
Membership fees, per year USA$12
Non-USA postal supplement$6
c/o Stuart Yarus (newsletter editor)
P.O. Box 210367
Bedford, TX 76095 U.S.A.
(817) 656 5896; (817) 577 0165
Compuserve: 73700,2545
Internet: 73700.2545@compuserve.com
SwedAPL
Chairman is Christer Ulfhielm.
c/o Novator Consulting Group AB
Svardvagen 11C
S-182 33 Danderyd
Sweden
Tel: +46 8 6226350
Fax: +46 8 6226351
email: 100341.404@CompuServe.com (Christer Ulfhielm)
Swiss APL User(s) Group
Hans Steffen
Swiss APL User Group
c/o Federal Statistical Office
CH3003 Berne
SWITZERLAND
Fax: +41 31 382 27 95

See also:

Dr. Hanspeter Bieri
Institut fur Informatik
Universitat Berne
Langgasstrasse 51
CH3012 Bern
SWITZERLAND
Tel: +41 31 65 86 81
Fax: +41 31 65 39 65
email: email:bieri@iam.unibe.ch
email: si@ifi.unizh.ch
Sydney APL Users Group
Newsletter (with contributions from Melbourne group): "Epsilon" Acting President and Treasurer: Nick Laletin, Jr.
PO Box 1511
Macquarie Centre,
North Ryde 2113 Australia
Tel: +61 02 427 1605
Fax: (02) 257 6670
Secretary: Erik Nielson
Tel: +61 2 257 5742

Toronto ACM APL SIG
Toronto ACM APL SIG [8/2007]
http://www.torontoapl.ca
Chair: Dan King
email: danking(at)sympatico(dot)ca
Secretary: Richard Procter
email: rjp(at)aplborealis(dot)com




(11)   Q: What's the latest APL conference?
A:
Conferences


NY/SIGAPL
APL as a Tool of Thought
Held Yearly in NY
Last Held: 31 January 1998

The APL2000 Customer Conference
The 2000 APL2000 Customer Conference http://www.apl2000.com/2008UserConference.php
The Annual ACM SigAPL Conference
APL2002: Array Processing Languages Lore, Problems and Applications [7/2002]
July 22-25, 2002
Madrid, Spain
For information see http://www.apl2002.com

Previous ACM SigAPL Conferences

APL2001: An Arrays Odyssey, June 25-28, 2001, Yale University, New Haven, CT, U.S.A. http://www.acm.org/sigAPL, http://www.acm.org/sigapl/apl2001
APL Berlin 2000: The 2000 International Conference on Array Programming Languages
Think Arrays in a Great City, July 24-27, 2000 - Berlin, Germany http://stat.cs.tu-berlin.de/APL-Berlin-2000


APL99: The 1999 International Conference on all Array Programming Languages
August 10-14, 1999 - University of Scranton, Scranton, Pennsylvania, USA See the ACM SIGAPL website, or subscribe to the APL99 mailing list. You can subscribe by sending email to listserve@acm.org with "Subscribe APL99-Info Your Name" in the BODY of the msg (without the quotes). You will be requested to confirm your subscription. You will receive an automatic welcome msg and updated information as it is available.


Previous conference proceedings are available from ACM as issues of APL Quote Quad.
Dyalog User Meeting
Dyalog '14 will be held in Eastbourne, East Sussex, UK from 21st to 25th September 2014. www.dyalog.com/user-meetings/dyalog14.htm
SIGAPL Software Library
All Conference Packages, for all years, will be available from SIGAPL and the Waterloo Archives at http://www.math.uwaterloo.ca/apl_archives/apl/Welcome.html[partially back 3/2006]


(12)   Q: How do I pass APL functions from one APL to another?
A:
Migration of applications

Different APL vendors store workspaces in completely different formats. This has greatly reduced sharing of functions among users, and made it difficult for users to migrate between vendors and even between machines. Here there are some options -

  1. Use the Workspace Interchange Standard (WSIS), documented in the ISO standard. This has been partially implemented by various vendors. For example Manugistics (STSC) uses an SLT workspace to do the reading/writing.

  2. Use the IBM )in and )out .atf files (documentation?) Here are some concrete instructions, courtesy of Eke van Batenburg,

    You only port APL, no GUI, no file I/O, no graphics, no locked objects. The following recipees use (arbitrary choosen) filename TRANSW.ATF on floppy as intermediate. "<>" means "next line".

    1. Macintosh APL68000 export to floppy:
      []MOUNT'Untitled' <> )OUT 0 TRANSWS
      In finder, change file name to "TRANSWS.ATF"

    2. Macintosh APL68000 import from floppy:
      In finder, change file name to "TRANSWS" (without ".ATF" extension!!!)
      []MOUNT'Untitled' <> )IN 0 TRANSWS Problems:
      "INVALID FILE" can mean "SYMBOL TABLE FULL" (check ")SYMBOLS" and increase them to 1000) or comment lines in file (remove all lines beginning with "*" using any editor and try again).

    3. Atari APL68000 export to floppy:
      []MOUNT 'A:' <> )OUT 0 TRANSWS

    4. Atari APL68000 import from floppy
      []MOUNT 'A:' <> )IN 0 TRANSWS
      Problems: same as in point 2.

    5. IBM APL2/PC export to floppy:
      )HOST A: <> )OUT TRANSWS

    6. IBM APL2/PC import from floppy:
      )HOST A: <> )IN TRANSWS
      Problems: none experienced upto now

    7. IBM mainframe export to floppy:
      start APL with "APL2 CASE(2)" (necessary for underscored conversion)
      )CLEAR <> )COPY workspacetobeported (NOT LOAD!!!!)
      )OUT TRANSWS <> )CLEAR <> )IN TRANSWS <> )OUT TRANSWS
      (yes, 2x seems to work, 1x sometimes gives gibberish, I don't know why)
      Download ....APLTF.TRANSWS to floppy, rename to TRANSWS.ATF
      Problems: if you download with Kermit: set TEXTMODE OFF and set file TYPE BINARY

    8. IBM mainframe import from floppy
      I have no experience with this, but I suppose:
      Upload TRANSWS.ATF to file ...APLTF.TRANSWS
      )IN TRANSWS

    9. APL2000 APL+DOS, APL+UNIX, APL+Win export to floppy:
      ]OUT A:TRANSWS.ATF

    10. APL2000 APL+DOS, APL+UNIX, APL+Win import from floppy:
      ]IN A:TRANSWS.ATF
      Problems: Different from IBM or APL68000 or "extended standard" are: "A B C[2]" is B, partioned enclose, squeezed quad, monadic ",[1.5]", take with axis and scalar functions with axis.

    11. Dyalog APL:
      Dyalog includes User Commands for workspace transfer; these are documented in the Workspace Transfer Guide, supplied with Dyalog APL.

    12. APLX reportedly provides )IN and )OUT commands compatible with APL2/PC and APL2/370.

    13. NARS2000 also supports migration through .atf files written out by )OUT and read in by )IN.

  3. Write the functions/data out to ASCII files using some sort of transliteration scheme (see 11). This has the advantage over (1) that the files are human-readable and editable.
  4. VisualAPL from APL2000 provides two simple options for importing APL code from legacy APL's:
    1. Select the APL code in the source APL's session and Paste Special it into VisualAPL in Microsoft Visual Studio 2005/2008.
    2. An ActiveX component is provided with VisualAPL to en masse convert the legacy APL code to Unicode and store it in a text file which can be used by VisualAPL.
    VisualAPL does not use a proprietary workspace format for storing APL code, instead it stores APL code in Unicode text files which can be run as interpreted APL scripts or as compiled APL .Net classes using Microsoft Visual Studio 2005/2008. VisualAPL Unicode text files can also be directly compiled without Visual Studio using the command line compiler provided with the Microsoft .Net framework.

    VisualAPL does not use a proprietary APL 'session', but instead uses the mainstream Microsoft Visual Studio 2005/2008 IDE [Interactive Development Environment].

All schemes suffer from the basic incompatibility between APL vendors. This comes from extensions to standard ISO APL in several areas:

  1. Different built in functions - the quad functions. This includes file IO, graphics etc. Also the (mostly obsolete) ibeam functions.
  2. Generalized arrays - boxes versus nests. A major fight in the community for at least the last 10 years. Unresolved.
  3. User defined operators - not all implementations allow this.
  4. Multivalent functions - not all implementations allow this.

Each instance of the above requires someone who knows both implementations to rewrite the code. Hence only ISO APL is easily portable.



(13)   Q:How do I write APL using only ASCII?
A:
Writing APL in ASCII

Almost all vendors have provided ways to enter APL from non-APL terminals. They took forms such as @BOX for example. For some reason however, they all used different symbol sets and different transliterations. Hence all are incompatible. Various users, seeing the advantage of this approach versus the WSIS have tried their hands.

I there are several separate issues: writing an APL character, writing APL data, writing APL functions, and writing out a whole workspace.

Approaches for APL characters :

  1. Jim Weigang has proposed a verbose version that is probably the current standard.
    http://www.chilton.com/~jimw/a2apapr1.html Example:
    s {<-} +/ {rho} , a
    Transliteration programs for many APL's are available at
    http://www.chilton.com/~jimw/a2ardme.html [this link works, but the program links point to inaccessible parts of waterloo... this currently gets to real programs: http://www.math.uwaterloo.ca/apl_archives/apl/software-library/apl95/]

  2. My own approach is a bit more terse - see aplc, symbols3v1.txt on my home page
    Example:
    s  .is + / .ro , a

  3. William Chang (wchang@phage.cshl.org) has proposed a J-ish verion called APL!
    Example:
    s  <- +/ ? , a

Approaches for objects:

  1. John Mitloehner (mitloehn@uxq.wu-wien.ac.at) has proposed a PP scheme for this that includes data and functions. See his article at APL92. Code for various APLs is available at waterloo. Example:
       @begin function NUB
          R@is NUB X
          R@is ((X@iota X)= @iota @rho X)/X
       @end function
    
    Code is also available for incorporation of APL into latex documents. See J. Mitlohner (1992), Porting APL Programs via ASCII Transliteration. APL Quote Quad, 23(1):148-155.

  2. Jim Weigang proposes the more familiar "Del editor" output format. Sample code for this translator is available in this format.


(14)   Q:What about Unicode?
A:
Writing APL in Unicode
This section needs some work

Unicode (http://www.unicode.org/) was conceived as a way of storing data in any of the worlds languages. This includes APL. Most modern computer OS seem to support this. Most modern APLs natively support unicode now. Of course fonts are needed, and programs that can display/interact with the data. Most (all?) fonts are incomplete, as there are a lot of glyphs need to represent everything, so of course many don't include all APL characters (or Devanagari, Tibetan,...).



*free usually means you can get it for free from the net, or pay small media/documentation charges to get it from the vendor.

Changes/Additions: swsirlin@earthlink.net

This list is not authorized or supported by the US government or NASA or Caltech or the Jet Propulsion Laboratory. Nor is any other organization or individual living or dead or gone beyond responsible in any official or legal way. It is distributed solely on an as-is basis, with no guarantee of being of any use whatsoever to anyone. The user takes complete responsibility for any problems or trouble resulting from the use of this list.