Nial: Difference between revisions
(→History: Conform to wiki style, with last names and links) |
m (fix broken dict link) |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 19: | Line 19: | ||
| documentation = [https://www.nial-array-language.org/ndocs Documentation] | | documentation = [https://www.nial-array-language.org/ndocs Documentation] | ||
| influenced by = [[Dyalog APL]] | | influenced by = [[Dyalog APL]] | ||
| run online = [https://tio.run/# | | run online = [https://tio.run/#Nial Try it online!] (may be outdated) | ||
}} | }} | ||
'''Nial''' is an APL-family language actively maintained and developed by [[John Gibbons]]. It uses the [[nested array model]] and closely follows APL-derived languages semantically, differing from tradition in its use of atlas,<ref>[https://www.nial-array-language.org/ndocs/ | '''Nial''' is an APL-family language actively maintained and developed by [[John Gibbons]]. It uses the [[nested array model]] and closely follows APL-derived languages semantically, differing from tradition in its use of atlas,<ref>[https://www.nial-array-language.org/ndocs/NialDictionary.html#atlas Nial Dictionary - Atlas]</ref> left-to-right evaluation, and usage of words for builtins and primitive functions. | ||
== History == | == History == | ||
Line 33: | Line 33: | ||
In 2014 Jenkins started working with John Gibbons to develop a 64-bit version and to add capabilities that Gibbons needed for his work. They decided to target Unix-based platforms and release Q'Nial on GitHub. | In 2014 Jenkins started working with John Gibbons to develop a 64-bit version and to add capabilities that Gibbons needed for his work. They decided to target Unix-based platforms and release Q'Nial on GitHub. | ||
A new website for the QNial7 repository with documentation was made in 2021, and is currently undergoing development.<ref>https://github.com/danlm/QNial7</ref> | A new website for the QNial7 repository with documentation was made in 2021, and is currently undergoing development.<ref>[https://github.com/danlm/QNial7 QNial7]</ref> | ||
Nial was [[Array Cast#nial|featured on the Array Cast]] in 2023. | |||
== External links == | |||
* [[wikipedia:Nial|Nial]] | |||
== References == | == References == | ||
<references /> | <references /> | ||
{{APL dialects}} | |||
[[Category:Nested array languages]][[Category:ASCII languages]][[Category:Left to right]] |
Latest revision as of 07:43, 25 January 2024
Nial is an APL-family language actively maintained and developed by John Gibbons. It uses the nested array model and closely follows APL-derived languages semantically, differing from tradition in its use of atlas,[1] left-to-right evaluation, and usage of words for builtins and primitive functions.
History
Nial was developed by Mike Jenkins and Trenchard More in a collaborative research project supported by Queen's University at Kingston and IBM Cambridge Scientific Center from 1979 to 1982. Jenkins' team at Queen's designed and implemented a portable C-based interpreter, Q'Nial, that was initially released in 1983.
The language combines Trenchard More's theory of nested arrays with Mike's ideas on how to build an interactive programming system. The goal was to combine the strengths of APL array-based programming with implementation concepts borrowed from LISP, structured programming ideas from ALGOL, and functional programming concepts from FP. The interpreter, originally developed for Unix, was small enough to run on the then newly released IBM PC and portable enough to execute on IBM mainframes computers.
Nial Systems limited licensed the interpreter from Queen's University and marketed it widely. Mike Jenkins continued to refine both the language and its implementation, and in 2006 he released Version 6.3 as an open source project to encourage continued development of Nial.
In 2014 Jenkins started working with John Gibbons to develop a 64-bit version and to add capabilities that Gibbons needed for his work. They decided to target Unix-based platforms and release Q'Nial on GitHub.
A new website for the QNial7 repository with documentation was made in 2021, and is currently undergoing development.[2]
Nial was featured on the Array Cast in 2023.
External links
References
APL dialects [edit] | |
---|---|
Maintained | APL+Win ∙ APL2 ∙ APL64 ∙ APL\iv ∙ Aplette ∙ April ∙ Co-dfns ∙ Dyalog APL ∙ Dyalog APL Vision ∙ dzaima/APL ∙ GNU APL ∙ Kap ∙ NARS2000 ∙ Pometo ∙ TinyAPL |
Historical | A Programming Language ∙ A+ (A) ∙ APL# ∙ APL2C ∙ APL\360 ∙ APL/700 ∙ APL\1130 ∙ APL\3000 ∙ APL.68000 ∙ APL*PLUS ∙ APL.jl ∙ APL.SV ∙ APLX ∙ Extended Dyalog APL ∙ Iverson notation ∙ IVSYS/7090 ∙ NARS ∙ ngn/apl ∙ openAPL ∙ Operators and Functions ∙ PAT ∙ Rowan ∙ SAX ∙ SHARP APL ∙ Rationalized APL ∙ VisualAPL (APLNext) ∙ VS APL ∙ York APL |
Derivatives | AHPL ∙ BQN ∙ CoSy ∙ ELI ∙ Glee ∙ I ∙ Ivy ∙ J ∙ Jelly ∙ K (Goal, Klong, Q) ∙ KamilaLisp ∙ Lang5 ∙ Lil ∙ Nial ∙ RAD ∙ Uiua |
Overviews | Comparison of APL dialects ∙ Timeline of array languages ∙ Timeline of influential array languages ∙ Family tree of array languages |