System Function EM: Difference between revisions
From NARS2000
Jump to navigationJump to search
(add 3rd item explaining usage) |
No edit summary |
||
Line 1: | Line 1: | ||
<h1><apl>{quad}EM</apl> - Error Message</h1> | <h1><apl>{quad}EM</apl> - Error Message</h1> | ||
{{BoxStart|<apll>{quad}EM</apll> | |||
|Return the value of the current error message|}} | |||
{{BoxEnd|}} | |||
<apll>{quad}EM</apll> is an [[ISO 13751]] standard niladic system function which returns the current error message. This is | <apll>{quad}EM</apll> is an [[ISO 13751]] standard niladic system function which returns the current error message. This is an array of three strings. The first element is the text of the error message itself, in all upper case. The second element is the line typed in or the line of the function where the error occurred. The third element is usually a caret (^) pointing to where the error in the line shown in the second element occurred. | ||
The format of <apll>{quad}EM</apll> is implementation dependent. | The format of <apll>{quad}EM</apll> is implementation dependent. Here is an example from NARS2000 on an attempt to make 2+2 = 5:<br/> | ||
<code><big>''' | |||
a←2+2<br/> | |||
a<br/> | |||
4<br/> | |||
5←2+2<br/> | |||
SYNTAX ERROR<br/> | |||
5←2+2<br/> | |||
∧<br/> | |||
a<br/> | |||
4<br/> | |||
⎕EM<br/> | |||
SYNTAX ERROR<br/> | |||
5←2+2 <br/> | |||
∧ <br/> | |||
'''</big></code> | |||
<apll>{quad}EM</apll> is a ''niladic'' function, you cannot assign a value to it. | <apll>{quad}EM</apll> is a ''[[niladic]]'' system function, you cannot assign a value to it. | ||
{{System Variables}} | {{System Variables}} |
Revision as of 16:44, 27 February 2013
⎕EM - Error Message
|
||||
⎕EM is an ISO 13751 standard niladic system function which returns the current error message. This is an array of three strings. The first element is the text of the error message itself, in all upper case. The second element is the line typed in or the line of the function where the error occurred. The third element is usually a caret (^) pointing to where the error in the line shown in the second element occurred.
The format of ⎕EM is implementation dependent. Here is an example from NARS2000 on an attempt to make 2+2 = 5:
a←2+2
a
4
5←2+2
SYNTAX ERROR
5←2+2
∧
a
4
⎕EM
SYNTAX ERROR
5←2+2
∧
⎕EM is a niladic 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 |