Dfns workspace: Difference between revisions
Jump to navigation
Jump to search
(+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 == |
Latest revision as of 22:13, 10 September 2022
dfns.dws is a workspace which is supplied together with Dyalog APL. Since the introduction of direct functions in 1996, and their inclusion in Dyalog APL version 8.1,[1] 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 '09.[2]
Example usage
As with other workspaces, workspace dfns
can be copied into the current workspace using the system function ⎕CY
:
⎕CY'dfns' ⍝ Example call: timing an expression using function `cmpx` 1 cmpx '((1e6∘|2∘×)⍣871) 1' 0.0001302490234375
Copying in only one or more specific functions is done by adding a left argument:
'dec' 'hex'⎕CY'dfns' hex 1234 04d2 dec '04d2' 1234
It can also be used to import the entire workspace into a utility namespace:
{(⍎⍵⎕NS⍬).⎕CY ⍵}'dfns' ⍝ Example call: calendar function from the new namespace dfns.cal 2021 12 December 2021 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Referrences
- ↑ John Scholes. Direct Functions in Dyalog APL. Dyadic Vendor Forum at APL96.
- ↑ Dyalog '09 C03: Introduction to D-Functions (dfns) (Video 1 (124 mins), Video 2 (67 mins))
External links
- dfns.dyalog.com – website generated based on the contents of this workspace.
APL development [edit] | |
---|---|
Interface | Session ∙ Typing glyphs (on Linux) ∙ Fonts ∙ Text editors |
Publications | Introductions ∙ Learning resources ∙ Simple examples ∙ Advanced examples ∙ Mnemonics ∙ ISO 8485:1989 ∙ ISO/IEC 13751:2001 ∙ A Dictionary of APL ∙ Case studies ∙ Documentation suites ∙ Books ∙ Papers ∙ Videos ∙ APL Quote Quad ∙ Vector journal ∙ Terminology (Chinese, German) ∙ Neural networks ∙ Error trapping with Dyalog APL (in forms) |
Sharing code | Backwards compatibility ∙ APLcart ∙ APLTree ∙ APL-Cation ∙ Dfns workspace ∙ Tatin ∙ Cider |
Implementation | Resources ∙ Open-source ∙ Magic function ∙ Performance ∙ APL hardware |
Developers | Timeline of corporations ∙ APL2000 ∙ Dyalog ∙ IBM ∙ IPSA ∙ STSC |