Differences between revisions 15 and 39 (spanning 24 versions)
Revision 15 as of 2007-03-10 20:49:00
Size: 3129
Comment:
Revision 39 as of 2017-02-16 17:49:14
Size: 3869
Editor: KaiJaeger
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents>>
Line 2: Line 4:

''
Where to start — and with which APL? There are several to choose from.''
Where to start — and with which APL? There are several to choose from.
Line 6: Line 7:

If you have no prior experience with an APL, no teacher and no textbook, your best bet is '''J''' from [http://www.jsoftware.com Jsoftware]. You can [http://www.jsoftware.com/download_systems.htm download] it free on a variety of platforms, including the Windows, Macs, Linux and the PocketPC. It requires no special fonts or keyboard mappings, and comes with substantial tutorial materials and the [wiki:JWiki/FrontPage J Wiki].

There are contemporary [wiki:Jwiki/Books textbooks] for both the language itself and its use in mathematics. The [http://www.jsoftware.com/forums.htm J Forum] is active, and helps and encourages new J programmers.
If you have no prior experience with an APL, no teacher and no textbook, download [[Open Source APL: NARS2000|NARS2000]], an Open Source APL interpreter, and make use of the excellent APL [[http://aplwiki.com/LearnApl/LearningApl|Tutorial on the APL wiki]].
Line 12: Line 10:
=== Open source ===
[[Open Source APL: NARS2000|NARS2000]] is an Open Source APL which is strongly suggested for looking into the language as such. It does not come with any OO-features, this is subject to the commercial implementation.
Line 13: Line 13:
There are no textbooks on the other modern APLs; J is an honourable exception. The classic textbooks tell nothing about important features of modern APLs such as object-oriented GUI support, control structures, .NET interfaces, direct definition, namespaces and user-defined operators. But if you have a classic textbook, such as Gilman & Rose, you can use it to learn the basics of the language. '''A+''' is an APL originally developed by WikiPedia:Arthur_Whitney for financial-markets applications at Morgan Stanley, an American investment bank, where it has been used since the mid-1980s, and subsequently released under GNU Public Licence at [[http://www.aplusdev.org|aplusdev.org]]. The BAA built a '''Windows version of A+''', which you can download from the [[http://www.vector.org.uk/aflat/|BAA A+ project]].
Line 15: Line 15:
In this case, you will find the ISO-standard APL '''I-APL for Windows''' will serve you very well. You can [attachment:iapl111.zip download] it here. === Commercial APLs ===
==== Interpreted APLs ====
Line 17: Line 18:
== Open source ==  ||APL2 ||[[http://www-306.ibm.com/software/awdtools/apl/|external link]]||
 ||APL+Win ||[[http://www.apl2000.com/|external link]]||
 ||Dyalog ||[[http://www.dyalog.com|external link]]||
Line 19: Line 22:
'''A+''' is an APL originally developed by wiki:WikiPedia/Arthur_Whitney for financial-markets applications at Morgan Stanley, an American investment bank, where it has been used since the mid-1980s, and subsequently released under GNU Public Licence at [http://www.aplusdev.org aplusdev.org]. The BAA built a '''Windows version of A+''', which you can download from the [http://www.vector.org.uk/aflat/ BAA A+ project]. are primarily used for commercial programming and run on a variety of PC and mainframe platforms; see [[Misc/SupportedPlatforms|SupportedPlatforms]] for details.
Line 21: Line 24:
== Industrial strength == They are extensively documented but some offer little material to support new programmers. They are shipped with many features to assist working programmers and are excellent tools for general programming.
Line 23: Line 26:
[http://www-306.ibm.com/software/awdtools/apl/ APL2], [http://www.apl2000.com/ APL2000], [http://www.microapl.co.uk/apl/ APLX], [http://www.dyalog.com Dyalog APL] and [http://www.soliton.com/services_sharp.html SHARP APL] are primarily used for commercial programming and run on a variety of PC and mainframe platforms. They are extensively documented but offer little material to support new programmers. They are shipped with many features to assist working programmers and are excellent tools for general programming. ==== Compiled APLs ====
Line 25: Line 28:
[http://www.aplnext.com/ Visual APL] is a new APL specifically designed for use with wiki:WikiPedia:Microsoft_Visual_Studio in multilingual applications. [[http://forum.apl2000.com/viewforum.php?f=4&sid=65746cb3d23cf81a68ae03c5ea7c4e7a|Visual APL]] is an object-oriented, Unicode-based APL implementation which is fully-integrated with WikiPedia:Microsoft_Visual_Studio and produces truly managed code which fully inter-operates with any other .Net language, such as C# and VB.Net. An extensive collection of sample applications and detailed examples for VisualAPL are available at [[http://forum.apl2000.com/viewforum.php?f=4&sid=7af62b3872565f012a77b4e1956fbc1d|VisualAPL Forum]]
Line 27: Line 30:
While licences for these interpreters typically cost several hundred pounds, some vendors (eg Dyalog and IBM) offer licences for '''educational purposes''' either free or at large discount. MicroAPL and Soliton Associates offer '''free personal versions''' of (respectively) APLX and SHARP APL for Linux. ==== Pricing ====
While licences for these implementations typically cost several hundred pounds/euros/dollars, some vendors (e.g. APL2000 [both APL+Win and VisualAPL], Dyalog and IBM) offer licences for '''educational purposes''' either free or at large discount.
Line 29: Line 33:
Q is the latest APL from Arthur Whitney, tuned for fast execution and very large database queries. It sees most use in financial markets, where server licences sell for tens of thousands of dollars. '''Educational licences''' are available for teaching; contact [http://www.kx.com/ KX Systems]. Pricing varies quite widely. For example, some APL vendors require you to purchase an annual developer licence; other vendors sell APL as a one-off transaction, and only charge for upgrades. In addition, some APL vendors charge a fee for a runtime licence (required when distributing your own applications written in APL); for other vendors the runtime licence is free. If price is important you are advised to shop around.
Line 31: Line 35:
---- == Other members of the APL family ==
=== J ===
J is Ken Iversons latest attempt to improve APL. J is certainly closely related to APL, but in the view of some people it is not an APL dialect. For details see the [[http://code.jsoftware.com/wiki/Main_Page|J wiki]]

=== K and Q ===
K and Q are the latest APLs from Arthur Whitney, tuned for fast execution and very large database queries. It sees most use in financial markets, where server licences sell for tens of thousands of dollars. '''Educational licences''' are available for teaching; contact [[http://www.kx.com/|KX Systems]].

Note that K is really the language while Q is just a layer on top of it that uses English keywords for the primitives.

== Documentation ==

There are some excellent books available addressing the needs of beginners as well as advanced programmers. Look at BooksAndPublications for a list.

----

Which APL?

Where to start — and with which APL? There are several to choose from.

Self-starters

If you have no prior experience with an APL, no teacher and no textbook, download NARS2000, an Open Source APL interpreter, and make use of the excellent APL Tutorial on the APL wiki.

Classic APL

Open source

NARS2000 is an Open Source APL which is strongly suggested for looking into the language as such. It does not come with any OO-features, this is subject to the commercial implementation.

A+ is an APL originally developed by Arthur_Whitney for financial-markets applications at Morgan Stanley, an American investment bank, where it has been used since the mid-1980s, and subsequently released under GNU Public Licence at aplusdev.org. The BAA built a Windows version of A+, which you can download from the BAA A+ project.

Commercial APLs

Interpreted APLs

are primarily used for commercial programming and run on a variety of PC and mainframe platforms; see SupportedPlatforms for details.

They are extensively documented but some offer little material to support new programmers. They are shipped with many features to assist working programmers and are excellent tools for general programming.

Compiled APLs

Visual APL is an object-oriented, Unicode-based APL implementation which is fully-integrated with Microsoft_Visual_Studio and produces truly managed code which fully inter-operates with any other .Net language, such as C# and VB.Net. An extensive collection of sample applications and detailed examples for VisualAPL are available at VisualAPL Forum

Pricing

While licences for these implementations typically cost several hundred pounds/euros/dollars, some vendors (e.g. APL2000 [both APL+Win and VisualAPL], Dyalog and IBM) offer licences for educational purposes either free or at large discount.

Pricing varies quite widely. For example, some APL vendors require you to purchase an annual developer licence; other vendors sell APL as a one-off transaction, and only charge for upgrades. In addition, some APL vendors charge a fee for a runtime licence (required when distributing your own applications written in APL); for other vendors the runtime licence is free. If price is important you are advised to shop around.

Other members of the APL family

J

J is Ken Iversons latest attempt to improve APL. J is certainly closely related to APL, but in the view of some people it is not an APL dialect. For details see the J wiki

K and Q

K and Q are the latest APLs from Arthur Whitney, tuned for fast execution and very large database queries. It sees most use in financial markets, where server licences sell for tens of thousands of dollars. Educational licences are available for teaching; contact KX Systems.

Note that K is really the language while Q is just a layer on top of it that uses English keywords for the primitives.

Documentation

There are some excellent books available addressing the needs of beginners as well as advanced programmers. Look at BooksAndPublications for a list.


CategoryGuides

WhichApl (last edited 2017-02-16 17:49:14 by KaiJaeger)