Nial

For the village in Iran, see Nial, Iran.
Nial
Paradigm array
Designed by Mike Jenkins
Developer Nial Systems Ltd
First appeared 1981
Stable release
6.3 / August 2006
Typing discipline dynamic
Major implementations
Q'Nial
Influenced by
APL, Lisp

Nial (from "Nested Interactive Array Language") is a high-level array programming language developed from about 1981 by Mike Jenkins of Queen's University, Kingston, Ontario, Canada.

Nial combines a functional programming notation for arrays based on Array Theory developed by Trenchard More with structured programming concepts for numeric, character and symbolic data.

It is most often used for prototyping and artificial intelligence.

Q'Nial

In 1982, Jenkins formed a company (Nial Systems Ltd) to market the language and the Q'Nial implementation of Nial. As of 2014, the company website supports an Open Source project for the Q'Nial software with the binary and source available for download. Its license is derived from Artistic License 1.0, the only differences being the preamble, the definition of "Copyright Holder" (which is changed from "whoever is named in the copyright or copyrights for the package" to "NIAL Systems Limited"), and an instance of "whoever" (which is changed to "whomever").

Application of Operations

Nial like other APL derived languages allow the unification of binary operators and operations. Thus the below notations have the same meaning. Note: sum is same as +

Atlas

An atlas in Nial is an operation made up of an array of component operations. When an atlas is applied to a value, each element of the atlas is applied in turn to the value to provide an end result. This is used to provide point free (without-variables) style of definitions. It is also used by the transformers. In the below examples 'inner [+,*]' the list '[+,*]' is an atlas.

External links