4,506
edits
Line 6: | Line 6: | ||
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. | 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. | ||
== External links == | |||
=== Tutorials === | |||
* [https://chat.stackexchange.com/rooms/52405/conversation/lesson-16-apl-objects-namespaces APL Cultivation] | |||
=== Documentation === | |||
* [https://help.dyalog.com/latest/#Language/Introduction/Namespaces/Namespaces.htm Dyalog] | |||
== References == | == References == | ||
<references/> | <references/> | ||
{{APL features}}[[Category:Kinds of array]][[Category:Types]] | {{APL features}}[[Category:Kinds of array]][[Category:Types]] |