
related topics 
{math, number, function} 
{language, word, form} 
{system, computer, user} 
{style, bgcolor, rowspan} 
{@card@, make, design} 
{water, park, boat} 
{theory, work, human} 

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 functionlevel languages created by John Backus.^{[1]}
To avoid repeating the APL special character problem, J requires only the basic ASCII character set, resorting to the use of digraphs formed using the dot or colon characters to extend the meaning of the basic characters available. Additionally, to keep parsing and the language simple, and to compensate for the lack of character variation in ASCII, many characters which might need to be balanced in other languages (such as [] {} "" `` or <>) are treated by J as stand alone tokens or (with digraphs) as part of a multicharacter token.
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^{[2]} and network performance analysis.^{[3]}
Like the original FP/FL languages, J supports functionlevel programming (also known as higherorder functional programming), via its tacit programming features (note that functionlevel programming is not the same as functional programming).
Unlike most languages that support objectoriented programming, J's flexible hierarchical namespace scheme (where every name exists in a particular locale) can be effectively used as a framework for both classbased and prototypebased objectoriented programming.
J is not a von Neumann programming language; however, it is possible to use the von Neumann programming style.
J is a closed source albeit freetouse software.^{[4]}
Contents
Examples
Full article ▸


related documents 
Holomorphic function 
Normed vector space 
Power series 
Natural logarithm 
Gödel's completeness theorem 
Ordinary differential equation 
Abel–Ruffini theorem 
Tychonoff's theorem 
Ideal (ring theory) 
Elementary algebra 
Miranda (programming language) 
Scope (programming) 
Transposition cipher 
Key size 
Objective Caml 
Homological algebra 
Unlambda 
String (computer science) 
Division (mathematics) 
Semigroup 
Locally compact space 
Trace (linear algebra) 
Cauchy–Schwarz inequality 
Chinese remainder theorem 
XPath 1.0 
Modular arithmetic 
Filter (mathematics) 
Isomorphism 
Merge sort 
Countable set 
