Nial: Difference between revisions

Jump to navigation Jump to search
2,129 bytes added ,  04:49, 23 September 2022
no edit summary
No edit summary
No edit summary
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Infobox array language
{{Infobox array language
| logo                    = [[File:Nial logo.png]]
| array model              = [[nested]]
| array model              = [[nested]]
| index origin            = 0
| index origin            = 0
Line 6: Line 7:
| unicode support          = no
| unicode support          = no
| released                = 1981
| released                = 1981
| developer                = [[John Gibbons]]
| developer                = [https://github.com/niallang Niallang]
| latest release version  = 7.0 / January 2017
| latest release version  = 7.0 / January 2017
| implementation languages = [[wikipedia:C (programming language)|C]]
| implementation languages = [[wikipedia:C (programming language)|C]]
| source                  = [https://github.com/danlm/QNial7 GitHub]
| source                  = [https://github.com/danlm/QNial7 GitHub]
| platforms                = x86
| platforms                = Packaged for x86 & arm32, should build most anywhere
| operating systems        = Linux, Darwin/OSX, Raspbian, Windows
| license                  = [[wikipedia:GNU_General_Public_License|GNU GPLv3]]
| license                  = [[wikipedia:GNU_General_Public_License|GNU GPLv3]]
| website                  = [https://www.nial-array-language.org www.nial-array-language.org]
| website                  = [https://www.nial-array-language.org www.nial-array-language.org]
| file ext                = .nial
| download                = [https://github.com/danlm/QNial7/tree/master/binaries QNial7/Binaries]
| file ext                = .ndf, .nlg
| 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/#Nial Try it online!] (may be outdated)
}}
}}


'''Nial''' is an APL-family language being actively maintained and developed by John Gibbons. It uses the [[nested array model]] and closely follows APL-derived languages semantically, where it differs from tradition is with it's use of atlas<ref>[https://www.nial-array-language.org/ndocs/NialDict2.html#atlas Nial Dictionary - Atlas]</ref>, left to right evaluation, and usage of words for builtins and primitive functions.
'''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/NialDict2.html#atlas Nial Dictionary - Atlas]</ref> 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 [[wikipedia:Queen's University at Kingston|Queen's University at Kingston]] and [[IBM]] [[wikipedia:Cambridge Scientific Center|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 array theory|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 [[wikipedia:LISP|LISP]], structured programming ideas from [[wikipedia:ALGOL|ALGOL]], and functional programming concepts from [[wikipedia:FP (programming language)|FP]]. The interpreter, originally developed for [[wikipedia:Unix|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.<ref>https://github.com/danlm/QNial7</ref>
 
== External links ==
* [[wikipedia:Nial|Nial]]


== References ==
== References ==
<references />
<references />


{{APL dialects}}
[[Category:Array languages]][[Category:Nested array languages]][[Category:ASCII languages]][[Category:Left to right]]
[[Category:Array languages]][[Category:Nested array languages]][[Category:ASCII languages]][[Category:Left to right]]
trusted
69

edits

Navigation menu