Function styles: Difference between revisions

Jump to navigation Jump to search
m
→‎Direct definition: Disambiguate main link
m (Text replacement - "<source" to "<syntaxhighlight")
m (→‎Direct definition: Disambiguate main link)
Line 11: Line 11:


== Direct definition ==
== Direct definition ==
{{Main|Direct definition}}
{{Main|Direct definition (Iverson)}}


Although the term "direct definition" has been used in various ways by different authors, one of the more notable uses is that described by [[Ken Iverson]] in ''Elementary Functions'', published 1974.<ref>[[Ken Iverson]]. ''Elementary Functions'' [https://www.jsoftware.com/papers/DirectDef.htm chapter 10]. [[IBM]]. 1974.</ref> Initially called "formal function definition", this style was called "direct definition" by Iverson and others at [[IPSA]] when they used it to describe new language features in [[SHARP APL]].<ref name="satn-direct"/> It was never implemented as part of SHARP APL, although utilities to translate it to SHARP's function definition, or the "canonical form", were provided. Iverson's direct definition required the name of the function like existing defined functions, but not those of the arguments: instead the left argument was named <syntaxhighlight lang=apl inline>⍺</syntaxhighlight> and the right argument <syntaxhighlight lang=apl inline>⍵</syntaxhighlight>. This argument naming would later by adopted by [[John Scholes]]' [[dfn]]s, but direct definition differed in many other respects.
Although the term "direct definition" has been used in various ways by different authors, one of the more notable uses is that described by [[Ken Iverson]] in ''Elementary Functions'', published 1974.<ref>[[Ken Iverson]]. ''Elementary Functions'' [https://www.jsoftware.com/papers/DirectDef.htm chapter 10]. [[IBM]]. 1974.</ref> Initially called "formal function definition", this style was called "direct definition" by Iverson and others at [[IPSA]] when they used it to describe new language features in [[SHARP APL]].<ref name="satn-direct"/> It was never implemented as part of SHARP APL, although utilities to translate it to SHARP's function definition, or the "canonical form", were provided. Iverson's direct definition required the name of the function like existing defined functions, but not those of the arguments: instead the left argument was named <syntaxhighlight lang=apl inline>⍺</syntaxhighlight> and the right argument <syntaxhighlight lang=apl inline>⍵</syntaxhighlight>. This argument naming would later by adopted by [[John Scholes]]' [[dfn]]s, but direct definition differed in many other respects.

Navigation menu