A+ (programming language)
A+ is a high-level, interactive, interpreted array programming language designed for numerically intensive applications, especially those found in financial applications.
Paradigm | Array |
---|---|
Designed by | Arthur Whitney |
Developer | Morgan Stanley |
First appeared | A – 1985 A+ – 1988 |
Stable release | 4.22-1
/ March 27, 2008 |
Typing discipline | Dynamic, strong |
License | GNU General Public License |
Filename extensions | .., .+, .a, .m[1] |
Website | www |
Major implementations | |
A+ | |
Influenced by | |
APL | |
Influenced | |
K |
History
In 1985, Arthur Whitney created the A programming language[2] to replace APL.[3] Other developers at Morgan Stanley extended it to A+, adding a graphical user interface (GUI) and other language features. The GUI A+ was released in 1988.
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.
Features
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+ runs on many Unix variants, including Linux. It is free and open source software released under a GNU General Public License. A newer GUI 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.
References
- "A+ Reference: Appendix: Quick Reference". Archived from the original on 2020-02-24. Retrieved 2020-02-06.
- "A – APL Wiki".
- "A+: History of A+". www.aplusdev.org. Retrieved 2019-01-18.
External links
- Official website, aplusdev.org