Jump to content

A+ (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Jerryobject (talk | contribs) at 07:03, 24 February 2018 (Template:Infobox programming language parameter update. Adds: Template:Start date and age, Template:Official website, APL template. Small WP:EoS WP:COPYEDITs: clarify. WP:BADEMPHASIS quote marks > WP:ITALICs.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
A+
ParadigmArray
Designed byArthur Whitney
DeveloperMorgan Stanley
First appeared1988; 37 years ago (1988)
Stable release
4.22-1 / March 27, 2008; 17 years ago (2008-03-27)
Typing disciplineDynamic, strong
LicenseGNU General Public License
Websitewww.aplusdev.org
Major implementations
A+
Influenced by
APL
Influenced
K

A+ is an array programming language descendent from the programming language A, which in turn was created to replace APL in 1988.[1] Arthur Whitney developed the A portion of A+, while other developers at Morgan Stanley extended it, adding a graphical user interface and other language features. A+ is a high-level, interactive, interpreted language, designed for numerically intensive applications, especially those found in financial applications. A+ runs on many Unix variants, including Linux. It is free and open source software released under a GNU General Public License.

A+ provides an extended set of functions and operators, a graphical user interface with automatic synchronizing of widgets and variables, asynchronous executing of functions associated with variables and events, dynamic loading of user compiled subroutines, and other features. A newer graphical user interface has not yet been ported to all supported platforms


The A+ language implements the following changes to the APL language:

  • an A+ function may have up to nine formal parameters
  • A+ code statements are separated by semicolons, so a single statement may be divided into two or more physical lines
  • The explicit result of a function or operator is the result of the last statement executed
  • A+ implements an object called a dependency, which is a global variable (the dependent variable) and an associated definition that is like a function with no arguments. Values can be explicitly set and referenced in exactly the same ways as for a global variable, but they can also be set through the associated definition.

Interactive A+ development is primarily done in the Xemacs editor, through extensions to the editor. Because A+ code uses the original APL symbols, displaying A+ requires a font with those special characters; a font named kapl is provided on the web site for that purpose.

Arthur Whitney went on to create a proprietary array language named K. Like J, K omits the APL character set. It lacks some of the perceived complexities of A+, such as the existence of statements and two different modes of syntax.

References

  1. ^ The History of A+ at aplusdev.org