J: Difference between revisions

Jump to navigation Jump to search
No edit summary
No edit summary
Line 21: Line 21:
| run online            = [https://tio.run/#j TIO]
| run online            = [https://tio.run/#j TIO]
}}
}}
 
{{Also on Wikipedia|J|J (programming language)}
'''J''' is an array language loosely following the [[SHARP APL]] tradition which uses [[wikipedia:ASCII|ASCII]] characters for primitive functionality and builds in [[leading axis theory]] and [[tacit programming]] as foundational design principles. J discards backwards compatibility with older APLs in order to simplify and regularize its syntax, redesign primitives to work on leading axes, and disentangle [[reduction]] from [[scan]]s and [[windowed reduction]]s (yielding the [[Prefix operator|prefix]] and [[infix operator]]s). However, J concepts such as [[function train]]s and the [[Indices]] function have been adopted by later APLs such as [[NARS2000]], [[Dyalog APL]], and [[dzaima/APL]]. J breaks the APL convention of writing primitives with a single glyph: instead, they are spelled with a single ASCII character possibly followed by one or two periods (<source lang=j inline>.</source>) or colons (<source lang=j inline>:</source>). It is also notable for its use of terms from English grammar to describe the language. For example, [[function]]s are called "verbs" while arrays are called "nouns".
'''J''' is an array language loosely following the [[SHARP APL]] tradition which uses [[wikipedia:ASCII|ASCII]] characters for primitive functionality and builds in [[leading axis theory]] and [[tacit programming]] as foundational design principles. J discards backwards compatibility with older APLs in order to simplify and regularize its syntax, redesign primitives to work on leading axes, and disentangle [[reduction]] from [[scan]]s and [[windowed reduction]]s (yielding the [[Prefix operator|prefix]] and [[infix operator]]s). However, J concepts such as [[function train]]s and the [[Indices]] function have been adopted by later APLs such as [[NARS2000]], [[Dyalog APL]], and [[dzaima/APL]]. J breaks the APL convention of writing primitives with a single glyph: instead, they are spelled with a single ASCII character possibly followed by one or two periods (<source lang=j inline>.</source>) or colons (<source lang=j inline>:</source>). It is also notable for its use of terms from English grammar to describe the language. For example, [[function]]s are called "verbs" while arrays are called "nouns".


Retrieved from ‘https://aplwiki.com/wiki/J