System Function NL: Difference between revisions
(→Monadic Function: added system quad vars, quad functions, magic functions) |
No edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 11: | Line 11: | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
<td>returns a character ''matrix'' of | <td>returns a character ''matrix'' of the names of '''variables''', '''functions''', '''operators''', etc. where <apll>R</apll> = 2 (variables), 3 (functions), 4 (operators), etc.</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
Line 17: | Line 17: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><apll>R</apll> is | <td><apll>R</apll> is an integer scalar or vector consisting of the name classes whose names should be returned in <apll>Z</apll>. For a complete list of Name Classes, see the description of [[System_Function_NC|Quad Name Classification <apll>⎕NC</apll>]].</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
Line 116: | Line 116: | ||
<hr width=50%> | <hr width=50%> | ||
NARS has added additional features over and beyond APL's standard ⎕NL. Magic Functions are | NARS has added additional features over and beyond APL's standard <apll>⎕NL</apll>. Magic Functions are in some ways for advanced APL programmers and or NARS developers - or anyone with a great idea to improve APL's functionality, see NARS Discussion Board on topics such as '''[http://nars2000.forumatic.com/viewforum.php?f=9 New Primitive Operators]'''. To see all magic functions available in NARS use the following: | ||
<pre> | <pre> | ||
⎕NL 23 24 ⍝ list all Magic Functions and Operators | ⎕NL 23 24 ⍝ list all Magic Functions and Operators | ||
Line 209: | Line 209: | ||
</pre> | </pre> | ||
Most magic functions are transparent to you the APL user since they implement APL symbol functionality. | Most magic functions are transparent to you the APL user since they implement APL symbol functionality; however, they '''<u>enhance APL's functionality</u>''', ref. [[System_Function_FMT|<apll>⎕FMT</apll>]]. | ||
<hr width= | <hr width=70%> | ||
==Dyadic Function== | ==Dyadic Function== | ||
Line 222: | Line 222: | ||
<td></td> | <td></td> | ||
<td></td> | <td></td> | ||
<td>returns a character ''matrix'' of user ''' | <td>returns a character ''matrix'' of the names of user '''variables''', '''functions''', '''operators''', etc. where <apll>R = 2</apll> (variables), <apll>3</apll> (functions), <apll>4</apll> (operators), etc.</td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
Line 228: | Line 228: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><apll>R</apll> is | <td><apll>R</apll> is one of more of <apll>2</apll> (variables), <apll>3</apll> (functions), <apll>2 3</apll> (both functions and variables), etc. For a complete list of Name Classes, see the description of [[System_Function_NC|Quad Name Classification <apll>⎕NC</apll>]].</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td><apll>L</apll> is a '''letter''' or '''letters''' for | <td><apll>L</apll> is a '''letter''' or '''letters''' for limiting the names list, i.e. which begin with the letter(s) to show.</td> | ||
</tr> | </tr> | ||
Line 243: | Line 243: | ||
</pre> | </pre> | ||
Function '''⎕NL may be used inside user functions''' whereas system commands )FNS and )VARS cannot be used inside a user function. | Function '''<apll>⎕NL</apll> may be used inside user functions''' whereas system commands <apll>)FNS</apll> and <apll>)VARS</apll> cannot be used inside a user function. | ||
<br><br> | <br><br> | ||
'''See Also: [[System_Function_NC|Quad Name | '''See Also: [[System_Function_NC|Quad Name Classification <apll>⎕NC</apll>]]'''<br> | ||
{{SFDM|NL}} | {{SFDM|NL}} |
Latest revision as of 19:27, 9 March 2019
Quad Name List - ⎕NL (System Function)
Monadic Function
|
||||
R is an integer scalar or vector consisting of the name classes whose names should be returned in Z. For a complete list of Name Classes, see the description of Quad Name Classification ⎕NC. | ||||
Z is a character matrix of user objects in the workspace, each row being a name in the workspace. |
Quad Names List sample monadic calls:
⎕NL 3 ⍝ list function names in the active workspace ⎕NL 2 ⍝ list variable names in the active workspace ⎕NL 3 2 ⍝ list function AND variable names in the active workspace ⍴⎕NL 3 ⍝ The shape of names list - 1st element returned(# rows) shows the "user Function Count" in the active workspace
List all APL Quad ⎕ System Variables (per APL Standard):
⎕NL 5 ⎕alx ⎕ct ⎕dm ⎕dt ⎕elx ⎕fc ⎕feature ⎕fpc ⎕ic ⎕io ⎕lx ⎕pp ⎕pr ⎕pw ⎕rl ⎕sa ⎕wsid
List all APL Quad ⎕ System Functions (per APL Standard):
⎕NL 6 ⎕a ⎕at ⎕av ⎕cr ⎕d ⎕dl ⎕dr ⎕ea ⎕ec ⎕em ⎕error ⎕es ⎕et ⎕ex ⎕fmt ⎕fx ⎕lc ⎕mf ⎕nappend ⎕nc ⎕ncreate ⎕nerase ⎕nl ⎕nlock ⎕nnames ⎕nnums ⎕nread ⎕nrename ⎕nreplace ⎕nresize ⎕nsize ⎕ntie ⎕nuntie ⎕sysid ⎕sysver ⎕t ⎕tc ⎕tcbel ⎕tcbs ⎕tcesc ⎕tcff ⎕tcht ⎕tclf ⎕tcnl ⎕tcnul ⎕tf ⎕ts ⎕ucs ⎕vr ⎕wa
NARS has added additional features over and beyond APL's standard ⎕NL. Magic Functions are in some ways for advanced APL programmers and or NARS developers - or anyone with a great idea to improve APL's functionality, see NARS Discussion Board on topics such as New Primitive Operators. To see all magic functions available in NARS use the following:
⎕NL 23 24 ⍝ list all Magic Functions and Operators #BoxFMT #Conform #DydConv #DydDnShoe #DydDomino #DydDotDot #DydEpsUnderbar #DydIota #DydIotaUnderbar #DydLRShoeUnd #DydRank #DydScan #DydScan1 #DydUpShoe #IdnConv #IdnDot #IdnJotDot #MAD #MDIU #MEO #MI #MIO #MLRS #MLRSU #MM #MMUL #MonDnShoe #MonDomino #MonDot #MonDotAll #MonDotCr #MonDotMf #MonDotPerm #MonFMT #MonIota #MonRank #MonVR #MSD #MU #RoS2 #RoS1L #RoS1R #SD ⎕NL 23 #BoxFMT #Conform #DydDnShoe #DydDomino #DydDotDot #DydEpsUnderbar #DydIota #DydIotaUnderbar #DydLRShoeUnd #DydUpShoe #IdnDot #MAD #MDIU #MEO #MI #MIO #MLRS #MLRSU #MM #MMUL #MonDnShoe #MonDomino #MonDotAll #MonDotMf #MonDotPerm #MonFMT #MonIota #MonVR #MSD #MU #SD ⎕NL 24 #DydConv #DydRank #DydScan #DydScan1 #IdnConv #IdnJotDot #MonDot #MonDotCr #MonRank #RoS2 #RoS1L #RoS1R
Most magic functions are transparent to you the APL user since they implement APL symbol functionality; however, they enhance APL's functionality, ref. ⎕FMT.
Dyadic Function
|
||||
R is one of more of 2 (variables), 3 (functions), 2 3 (both functions and variables), etc. For a complete list of Name Classes, see the description of Quad Name Classification ⎕NC. | ||||
L is a letter or letters for limiting the names list, i.e. which begin with the letter(s) to show. |
Quad Names List sample dyadic calls:
"A" ⎕NL 3 ⍝ List all function names beginning with A. "M" ⎕NL 2 ⍝ List all variable names beginning with M. "AC" ⎕NL 3 2 ⍝ List all function AND variable names beginning with letter "A" and also letter "C".
Function ⎕NL may be used inside user functions whereas system commands )FNS and )VARS cannot be used inside a user function.
See Also: Quad Name Classification ⎕NC
Note: ⎕NL is available as both a monadic and dyadic form system function, you cannot assign a value to it.
System Variables (A value may be assigned to these except for ⎕DM) | |||||||||
---|---|---|---|---|---|---|---|---|---|
⎕ALX | ⎕CT | ⎕DM | ⎕DT | ⎕ELX | ⎕FC | ⎕FEATURE | ⎕FPC | ⎕IC | ⎕IO |
⎕LR | ⎕LX | ⎕PP | ⎕PR | ⎕PW | ⎕RL | ⎕SA | ⎕WSID | ||
Niladic System Functions (a value cannot be assigned to these) | |||||||||
⎕A | ⎕AV | ⎕EM | ⎕ET | ⎕LC | ⎕NNAMES | ⎕NNUMS | ⎕SI | ⎕SYSID | ⎕SYSVER |
⎕T | ⎕TC | ⎕TCBEL | ⎕TCBS | ⎕TCESC | ⎕TCFF | ⎕TCHT | ⎕TCLF | ⎕TCNL | ⎕TCNUL |
⎕TS | ⎕WA | ||||||||
Monadic or dyadic system functions (a value cannot be assigned to these) | |||||||||
⎕AT | ⎕CR | ⎕DC | ⎕DFT | ⎕DL | ⎕DR | ⎕EA | ⎕EC | ⎕ERROR | ⎕ES |
⎕EX | ⎕FMT | ⎕FX | ⎕MF | ⎕NAPPEND | ⎕NC | ⎕NCREATE | ⎕NERASE | ⎕NINFO | ⎕NL |
⎕NLOCK | ⎕NREAD | ⎕NRENAME | ⎕NREPLACE | ⎕NRESIZE | ⎕NSIZE | ⎕NTIE | ⎕NUNTIE | ⎕STOP | ⎕TF |
⎕TRACE | ⎕UCS | ⎕VR | |||||||
Note that quad functions and variables (except for the ⎕A family of functions) are case insensitive |
See Also | ||
System Commands | System Variables and Functions | Operators |
Keyboard | ||||||||||||||
Alt+Shift | ⍪ | ≡ | ≢ | ⍒ | ⍋ | ⌽ | ⍉ | ⊖ | ⍟ | ⍱ | ⍲ | ⍠ | ⌹ | |
Alt | ⋄ | ¨ | ¯ | < | ≤ | ∅ | ≥ | > | ≠ | ∨ | ∧ | × | ÷ | |
Shift | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | |
Key | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | |
Alt+Shift | ⍷ | √ | ⍨ | ⍸ | ⍥ | ⍣ | ⍞ | ⍬ | ⊣ | |||||
Alt | ? | ⍵ | ∊ | ⍴ | § | ↑ | ↓ | ⍳ | ○ | π | ← | → | ⊢ | |
Shift | Q | W | E | R | T | Y | U | I | O | P | { | } | | | |
Key | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | |
Alt+Shift | ∫ | ∂ | ⌻ | ⍢ | ⍙ | ⍤ | ⍫ | ⌷ | ||||||
Alt | ⍺ | ⌈ | ⌊ | ∞ | ∇ | ∆ | ∘ | ‼ | ⎕ | ⍎ | ⍕ | |||
Shift | A | S | D | F | G | H | J | K | L | : | " | |||
Key | a | s | d | f | g | h | j | k | l | ; | ' | |||
Alt+Shift | ⊆ | ⊇ | χ | ⍡ | ⍭ | ⊙ | ||||||||
Alt | ⊂ | ⊃ | ∩ | ∪ | ⊥ | ⊤ | ⍦ | ⍝ | ⍀ | ⌿ | ||||
Shift | Z | X | C | V | B | N | M | < | > | ? | ||||
Key | z | x | c | v | b | n | m | , | . | / |
NARS 2000 Lang Tool Bar |
← | → | + | - | × | ÷ | * | ⍟ | ⌹ | ○ | ! | ? | √ | | | ⌈ | ⌊ | ⊥ | ⊤ | ⊣ | ⊢ | |||
≡ | ≢ | < | ≤ | = | ≥ | > | ≠ | ∨ | ∧ | ⍱ | ⍲ | ↑ | ↓ | ⊂ | ⊃ | ⌷ | ⍋ | ⍒ | |||||
⍳ | ∊ | ⍸ | ⍷ | ∪ | ∩ | ⊆ | ⊇ | ~ | § | π | .. | , | ⍪ | ⍴ | ⌽ | ⊖ | ⍉ | ||||||
/ | \ | ⌿ | ⍀ | ⊙ | ¨ | ⍨ | ⍤ | ⍣ | ⍡ | ⍥ | ⍦ | . | ∘ | ⍠ | ‼ | ⌻ | ∂ | ∫ | ⍞ | ⎕ | ⍎ | ⍕ | |
⋄ | ⍝ | ∇ | ∆ | ⍙ | _ | ⍺ | ⍵ | ¯ | ⍬ | ∞ | ∅ | ||||||||||||
Second Row | i j k | i j k l | g | p | r | v | x |