4,494
edits
(+example usage) |
m (Text replacement - "<source" to "<syntaxhighlight") |
||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''dfns.dws''' is a workspace which is supplied together with [[Dyalog APL]]. | '''dfns.dws''' is a [[workspace]] which is supplied together with [[Dyalog APL]]. Since the introduction of [[dfn|direct functions]] in 1996, and their inclusion in Dyalog APL version 8.1,<ref>[[John Scholes]]. [https://www.dyalog.com/uploads/documents/Papers/dfns.pdf Direct Functions in Dyalog APL]. Dyadic Vendor Forum at APL96.</ref> people have been contributing to the collection. | ||
Late [[John Scholes]] was the editor of this workspace. He presented a talk about the contents of the workspace at [[Dyalog user meeting|Dyalog '09]].<ref>[[Dyalog user meeting|Dyalog '09]] C03: Introduction to D-Functions (dfns) ([https://dyalog.tv/Dyalog09/?v=OZARVrGQQho Video 1 (124 mins)], [https://dyalog.tv/Dyalog09/?v=RQNSe9s_3eE Video 2 (67 mins)])</ref> | Late [[John Scholes]] was the editor of this workspace. He presented a talk about the contents of the workspace at [[Dyalog user meeting|Dyalog '09]].<ref>[[Dyalog user meeting|Dyalog '09]] C03: Introduction to D-Functions (dfns) ([https://dyalog.tv/Dyalog09/?v=OZARVrGQQho Video 1 (124 mins)], [https://dyalog.tv/Dyalog09/?v=RQNSe9s_3eE Video 2 (67 mins)])</ref> | ||
== Example usage == | == Example usage == | ||
As with other workspaces, workspace < | As with other workspaces, workspace <syntaxhighlight lang=text inline>dfns</syntaxhighlight> can be copied into the current workspace using the [[Quad name|system function]] <syntaxhighlight lang=apl inline>⎕CY</syntaxhighlight>: | ||
< | <syntaxhighlight lang=apl> | ||
⎕CY'dfns' | |||
⍝ Example call: timing an expression using function `cmpx` | ⍝ Example call: timing an expression using function `cmpx` | ||
1 cmpx '((1e6∘|2∘×)⍣871) 1' | 1 cmpx '((1e6∘|2∘×)⍣871) 1' | ||
0.0001302490234375 | 0.0001302490234375 | ||
</ | </syntaxhighlight> | ||
Copying in only one or more specific functions is done by adding a left [[argument]]: | |||
<syntaxhighlight lang=apl> | |||
'dec' 'hex'⎕CY'dfns' | |||
hex 1234 | |||
< | 04d2 | ||
dec '04d2' | |||
1234 | |||
</syntaxhighlight> | |||
It can also be used to import the entire workspace into a utility [[namespace]]: | |||
<syntaxhighlight lang=apl> | |||
{(⍎⍵⎕NS⍬).⎕CY ⍵}'dfns' | {(⍎⍵⎕NS⍬).⎕CY ⍵}'dfns' | ||
Line 27: | Line 34: | ||
19 20 21 22 23 24 25 | 19 20 21 22 23 24 25 | ||
26 27 28 29 30 31 | 26 27 28 29 30 31 | ||
</ | </syntaxhighlight> | ||
== Referrences == | == Referrences == |