J (programming Language)

J (programming Language)

The J programming language, developed in the early 1990s by Kenneth E. Iverson and Roger Hui, is a synthesis of APL (also by Iverson) and the FP and FL function-level languages created by John Backus.

To avoid repeating the APL special-character problem, J requires only the basic ASCII character set, resorting to the use of the dot and colon as "inflections" to form short words similar to digraphs. Most such "primary" (or "primitive") J words serve as mathematical symbols, with the dot or colon extending the meaning of the basic characters available. Additionally, many characters which might need to be balanced in other languages (such as {} "" `` or <>) are treated by J as stand-alone words or, when inflected, as single-character roots of multi-character words.

J is a very terse array programming language, and is most suited to mathematical and statistical programming, especially when performing operations on matrices. It has also been used in Extreme Programming and network performance analysis.

Like the original FP/FL languages, J supports function-level programming (also known as higher-order functional programming), via its tacit programming features (note that function-level programming is not the same as functional programming).

Unlike most languages that support object-oriented programming, J's flexible hierarchical namespace scheme (where every name exists in a particular locale) can be effectively used as a framework for both class-based and prototype-based object-oriented programming.

J is not a von Neumann programming language; however, it is possible to use the von Neumann programming style.

Since March 2011, J is free and open source software under the GPLv3 license. One may also purchase source for commercial use under a negotiated license.

Read more about J (programming Language):  Examples, Data Types and Structures, Documentation, Control Structures