Namespace: Difference between revisions

Jump to navigation Jump to search
148 bytes added ,  19:33, 2 June 2020
(Created page with "A '''wikipedia:namespace''' is an encapsulation mechanism for names used within a program. Namespaces were added to APL2 in 1987,<ref name="swain">Rexford H. Swain. [...")
 
Line 4: Line 4:


== History ==
== History ==
The concept of namespaces in APL was proposed as early as 1981 by Ron Murray, based on encapsulation concepts called "modules" or "packages" developed in the 1970s.<ref>Ronald C. Murray. [https://doi.org/10.1145/800142.805363 Namespaces: Semipermeable membranes for APL applications] at [[APL81]].</ref> Murray credits Jim Ryan for the use of the term "Namespace". In 1987, [[IBM]] introduced namespaces to [[APL2]] as a form of name scope (IBM used the term "namescope" for a workspace or function scope) that could be manipulated directly by the programmer.<ref name="swain"/> Unlike the later [[Dyalog APL]] namespaces, IBM's are independent of any workspace, and stored separately. Dyalog's namespaces were added in [[Dyalog APL 7.0|version 7.0]], released in 1994, largely to make it easier to handle Dyalog's Windows GUI environment. In [[Dyalog APL 9.0]], namespace references were added, allowing these namespaces to be manipulated as values. Dyalog's namespaces would later become the basis of its [[object-oriented programming]] system implementation, although namespaces, classes, and objects are different kinds of values within the language.
The concept of namespaces in APL was proposed as early as 1981 by Ron Murray, based on encapsulation concepts called "modules" or "packages" developed in the 1970s.<ref>Ronald C. Murray. [https://doi.org/10.1145/800142.805363 Namespaces: Semipermeable membranes for APL applications] at [[APL81]].</ref> Murray credits Jim Ryan for the use of the term "Namespace". In 1987, [[IBM]] introduced namespaces to [[APL2]] as a form of name scope (IBM used the term "namescope" for a workspace or function scope) that could be manipulated directly by the programmer.<ref name="swain"/> Unlike the later [[Dyalog APL]] namespaces, IBM's are independent of any workspace, and stored separately. Dyalog's namespaces were added in [[Dyalog APL 7.0|version 7.0]],<ref>[[John Scholes]]. [http://archive.vector.org.uk/art10007730 Meeting: Dyalog APL Namespaces]. [[Vector journal]] Volume 11, No.1. 1994-07.</ref> released in 1994, largely to make it easier to handle Dyalog's Windows GUI environment. In [[Dyalog APL 9.0]], namespace references were added, allowing these namespaces to be manipulated as values. Dyalog's namespaces would later become the basis of its [[object-oriented programming]] system implementation, although namespaces, classes, and objects are different kinds of values within the language.


== References ==
== References ==
<references/>
<references/>
{{APL features}}[[Category:APL objects]]
{{APL features}}[[Category:APL objects]]

Navigation menu