A+ (programming language)
Programming language
title: "A+ (programming language)" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["apl-programming-language-family", "array-programming-languages", "data-centric-programming-languages", "programming-languages"] description: "Programming language" topic_path: "technology/programming-languages" source: "https://en.wikipedia.org/wiki/A+_(programming_language)" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0
::summary Programming language ::
::data[format=table title="Infobox programming language"]
| Field | Value |
|---|---|
| name | A+ |
| logo | Aplus logo.jpg |
| paradigm | Array |
| designer | Arthur Whitney |
| developer | Morgan Stanley |
| released | |
| latest release version | 4.22-1 |
| latest release date | |
| typing | Dynamic, strong |
| file_ext | , , , |
| implementations | A+ |
| influenced by | APL |
| influenced | K |
| license | GNU General Public License |
| :: |
|name = A+ |logo = Aplus logo.jpg |paradigm = Array |designer = Arthur Whitney |developer = Morgan Stanley |released = |latest release version = 4.22-1 |latest release date = |typing = Dynamic, strong |file_ext = , , , |implementations = A+ |dialects = |influenced by = APL |influenced = K |license=GNU General Public License
A+ is a high-level, interactive, interpreted array programming language designed for numerically intensive applications, especially those found in financial applications.
History
In 1988, Arthur Whitney began work on the A programming language to replace APL. Other developers at Morgan Stanley extended it to A+, adding a graphical user interface (GUI) and other language features.
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
References
::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::