Del: Difference between revisions

Jump to navigation Jump to search
9 bytes added ,  23:09, 4 January 2021
no edit summary
mNo edit summary
No edit summary
Line 1: Line 1:
{{Glyphbox|∇}}
{{Glyphbox|∇}}
The [[glyph]] '''del''' is a triangular symbol resembling an inverted Greek [[wikipedia:delta (letter)|delta]] and is represented by the [[Unicode]] character <code>∇</code>, "nabla". Its uses include:
The [[glyph]] '''del''' is a triangular symbol resembling an inverted Greek [[wikipedia:delta (letter)|delta]] and is represented by the [[Unicode]] character <code>∇</code>, "nabla". Its uses include:
* In [[APL\360]] and most other APLs, it is used to enter and exit the [[wikipedia:line editor|line editor]] which provides a function definition mode.<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Defined%20Functions%20and%20Operators/APL%20Line%20Editor.htm APL Line Editor].</ref>
* In [[APL\360]] and most other APLs, it is used to enter and exit the [[wikipedia:line editor|line editor]] which provides a function definition mode.<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Defined%20Functions%20and%20Operators/TradFns/APL%20Line%20Editor.htm APL Line Editor].</ref>
* In [[Dyalog APL]], [[NARS2000]], [[ngn/apl]], and [[dzaima/APL]] <source lang=apl inline>∇</source> represents the current [[dfn]], or the function derived from the current [[dop]], such that anonymous functions and operators may [[wikipedia:recursion (computer science)|recurse]].<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Defined%20Functions%20and%20Operators/DynamicFunctions/Recursion.htm Recursion].</ref>
* In [[Dyalog APL]], [[NARS2000]], [[ngn/apl]], and [[dzaima/APL]] <source lang=apl inline>∇</source> represents the current [[dfn]], or the function derived from the current [[dop]], such that anonymous functions and operators may [[wikipedia:recursion (computer science)|recurse]].<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Defined%20Functions%20and%20Operators/DynamicFunctions/Recursion.htm Recursion].</ref>
* In [[Dyalog APL]], <source lang=apl inline>∇</source> is used to delimit [[tradfn]] members of scripted [[object oriented programming|objects]].<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Object%20Oriented%20Programming/Class%20Members/Methods/Methods.htm Methods].</ref>
* In [[Dyalog APL]], <source lang=apl inline>∇</source> is used to delimit [[tradfn]] members of scripted [[object oriented programming|objects]].<ref>[[Dyalog Ltd.]] Programming Reference Guide. [https://help.dyalog.com/latest/#Language/Object%20Oriented%20Programming/Class%20Members/Methods/Methods.htm Methods].</ref>
* In [[APL2]], [[APLX]], and [[APL*PLUS]], a variant glyph <source lang=apl inline>⍫</source>, consisting of a Del <source lang=apl inline>∇</source> overstruck with a Tilde <source lang=apl inline>~</source>, is used instead of the closing <source lang=apl inline>∇</source> to "lock" the function definition. This prevents viewing or modifying the function's definition while still allowing the function to run. <ref>[[MicroAPL]]. APLX Help. [http://microapl.com/apl_help/ch_020_010_070.htm User-defined Functions].</ref> [[Dyalog APL]] instead offers the [[Lock Definition]] (<source lang=apl inline>⎕LOCK</source>) [[system function]] which provides a more fine-grained management of locked behaviour.<ref>[[Dyalog Ltd.]] Language Reference Guide. [https://help.dyalog.com/latest/#Language/System%20Functions/lock.htmLock Definition].</ref>
* In [[APL2]], [[APLX]], and [[APL*PLUS]], a variant glyph <source lang=apl inline>⍫</source>, consisting of a Del <source lang=apl inline>∇</source> overstruck with a Tilde <source lang=apl inline>~</source>, is used instead of the closing <source lang=apl inline>∇</source> to "lock" the function definition. This prevents viewing or modifying the function's definition while still allowing the function to run. <ref>[[MicroAPL]]. APLX Help. [http://microapl.com/apl_help/ch_020_010_070.htm User-defined Functions].</ref> [[Dyalog APL]] instead offers the [[Lock Definition]] (<source lang=apl inline>⎕LOCK</source>) [[system function]] which provides a more fine-grained management of locked behaviour.<ref>[[Dyalog Ltd.]] Language Reference Guide. [https://help.dyalog.com/latest/#Language/System%20Functions/lock.htm Lock Definition].</ref>
* In [[APL*PLUS]], <source lang=apl inline>⍝∇</source> marks a special "public comment" which can be retrieved with a dedicated system function even when the function is locked. This is also used to distinguish internal documentation from other comments.
* In [[APL*PLUS]], <source lang=apl inline>⍝∇</source> marks a special "public comment" which can be retrieved with a dedicated system function even when the function is locked. This is also used to distinguish internal documentation from other comments.
It should be noted that Del (<source lang=apl inline>∇</source>) has no connection to Delta (<source lang=apl inline>∆</source>) other than visual similarity. The latter is treated as a normal [[wikipedia:identifier (computer languages)|identifier]] character in all respects.
It should be noted that Del (<source lang=apl inline>∇</source>) has no connection to Delta (<source lang=apl inline>∆</source>) other than visual similarity. The latter is treated as a normal [[wikipedia:identifier (computer languages)|identifier]] character in all respects.

Navigation menu