Metalanguage, letter E

ecode, einfoattribute, einforef, ekeyword, elattribute, emptystring, ename, endangle, entryref, environment, eoffset, eol, eor, erchar, erspec, espec, especattribute, especref, etype, evclass, eventexpr, evid, exfunc, exp, expr, expratom, expritem, exprtail, externalroutinename, externref, extid, extractfields, extracttemplate, extresource, extsyntax, exttext, exvar


ecode

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents a code for an erroneous situation that may be found in the value of intrinsic special variable $ECODE. Such a code looks like one of the letters M, U or Z, followed by one or more printable characters (see the metalanguage symbol graphic) that are not equal to the comma (,).

Codes that start with M are defined in the ANSI M[UMPS] language standard; codes that start with U may be defined by the user; codes that start with Z are defined by the implementor.


einfoattribute

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents a code that describes the type of information that was passed back in the context of event-handling. This metalanguage symbol occurs as an expression that evaluates to one of "CHOICE", "CLASS", "ELEMENT", "KEY", "NEXTFOCUS", "OK", "PBUTTON", "PPOS", "PRIORFOCUS", "PSTATE", "SEQUENCE", "TYPE" or "WINDOW".

Modifed in a future ANSI M[UMPS] Windowing Application Programmer's Interface standard.

Added "COL" and "ROW" as possible values for information attribute codes.


einforef

Approved for inclusion in a future ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents the name of a variable (global or local) that is to be used for the purpose of passing call-back information in the context of event-handling.


ekeyword

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents an expression that evaluates to the value "EVENT".


elattribute

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents a code for an element attribute. This metalanguage symbol occurs as an expression that evaluates to either one of "ACTIVE", "BCOLOR", "CANCEL", "CANCHANGE", "CHARMAX", "CHOICE", "DRAW", "DRAWTYPE", "EVENT", "FCOLOR", "FFACE", "FRAMED", "FSIZE", "ID", "INSELECT", "INTERVAL", "NEXTG", "POS", "PRESOURCE", "RESOURCE", "ROWCOL", "SCROLL", "SCROLLBY", "SCROLLDIR", "SCROLLPOS", "SCROLLRANGE", "SELECTMAX", "SELECTVAL", "SIZE", "TBCOLOR", "TFCOLOR", "TFFACE", "TFSIZE", "TFSTYLE", "TITLE", "TOPSHOW", "TPOS", "TYPE", "UNITS", "VALUE" or "VISIBLE", or to an implementation-specific value (starts with "Z") or to an application-specific value (starts with "Y").

Modifed in a future ANSI M[UMPS] Windowing Application Programmer's Interface standard.

Added "COL", "COLWIDTH", "GRID", "HCOLID", "HROWID", "LEFTSHOW", "PTYPE" and "ROWHEIGHT" as possible values for element attribute codes.


emptystring

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents an empty string, a string of zero length, written in M[UMPS] as "".


ename

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents the name of an element. Names of elements consist of alphabetic characters and digits and may start with a % sign.


endangle

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents the final angle in the context of a drawing command (ARC or PIE). The angle is measured in degrees. 0 degrees is horizontal, along the positive axis, 90 degrees is vertical along the positive axis.


entryref

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents the destination of a DO or GOTO command.

Examples:

LABEL^ROUTINE
12345^ABCDE
00123^XYZ
LABEL
^ROUTINE

Valid, but not recommended:

LABEL+5^ROUTINE
LABEL+5


environment

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the specification of the name of an environment where certain entities may reside. The entities that may reside in other environments than the current processing environment are global variables, routines and LOCKed names.

Examples:

SET X=^|"LONDON"|CUSTOMER(ID,12)
DO GETINFO^|"SANDIEGO"|CUSTUTIL(CUSTOMER,"BALANCE")


eoffset

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the location in the line in a M[UMPS] program where an error occurred. The error location is represented as an integer number. Although the error location is intended to be the character position in the line where the error occurred, the standard does not describe how close the reported number has to be to the actual location in the source code.


eol

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents the internal encoding for "end of line" within a routine. Although the standard does not specify how a routine should be stored internally in a system, the standard does specify that the data stream created for routine interchange between implementations should encode the "end of line" as a Carriage Return followed by a Line Feed.


eor

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents the internal encoding for "end of routine" within a routine. Although the standard does not specify how a routine should be stored internally in a system, the standard does specify that the data stream created for routine interchange between implementations should encode the "end of routine" as a Carriage Return followed by a Form Feed.


erchar

Approved for inclusion in a future ANSI M[UMPS] language standard.

This metalanguage symbol represents the value of one of the directives of the FORMAT library function. The value represented by this metalanguage symbol is the "error string", a string that is used to indicate that the specified number cannot be formatted using the specified format mask.


erspec

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents those subscripts in a reference to ^$J[OB] that are needed to create a valid reference to descriptor for an error handler.


espec

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents an event specification. An event specification looks like a list of expressions (separated by commas).


especattribute

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents a code for an event specification attribute. This metalanguage symbol occurs as an expression that evaluates to either of the values "ENABLE" or "FILTERIN".


especref

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents the name of the node in ^$WINDOW or in ^$JOB that specifies the window, event, element or menu choice that is involved in the processing of an event.


etype

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents a code for an event-type. This metalanguage symbol occurs as an expression that evaluates to either one of "CHANGE", "CLICK", "CLOSE", "DBLCLICK", "DESELECT", "FKEYDOWN", "FKEYUP", "FOCUS", "GOBOTTOM", "GODOWN", "GODOWNBIG", "GOTOP", "GOUP", "GOUPBIG", "HELP", "KEYDOWN", "KEYUP", "MAX", "MIN", "MOVE", "PDOWN", "PDRAG", "PMOVE", "PUP", "RESTORE", "SELECT", "TIMER", "UNFOCUS", or an implementation-specific value (starts with "Z").

Modifed in a future ANSI M[UMPS] Windowing Application Programmer's Interface standard.

Deleted "FKEYDOWN", "FKEYUP" as possible values for event attribute codes.

Added "CHAR" as a possible value for event attribute codes.


evclass

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents the name of an event class. Possible class names may be "COMM" (events related to devices), "HALT" (events that are generated when processes terminate), "IPC" (events communicated by other processes), "INTERRUPT" (events that are generated when a process is interrupted in an implementation-specific fashion), "POWER" (events generated when loss of electrical power is imminent), "TIMER" (events that are generated when a timer's waiting time has elapsed) and "USER" (events that are generated through the ETRIGGER command).


eventexpr

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents an expression that is either an einfoattribute, or equal to the value "EVENTDEF".


evid

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents a value that identifies a specific event within an event class. The range of possible values depends on the event class and may be implementation-specific.


exfunc

Introduced in the 1990 ANSI M[UMPS] language standard.

This metalanguage symbol represents an extrinsic function reference. An extrinsic function reference looks like $$LABEL(parameters) or $$LABEL^ROUTINE(parameters) (no off-set allowed in this specification).

Note: An extrinsic variable is equivalent to an extrinsic function without parameters, i.e. $$LABEL^ROUTINE has the same value as $$LABEL^ROUTINE().

Modified in the 1990 ANSI M[UMPS] language standard.

An extrinsic function may also be a reference to an external resource, i.e. $&LABEL^ROUTINE(parameters) or $&PACKAGE.LABEL^ROUTINE(parameters).


exp

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents an exponent. An exponent looks like a capital (!) E, then optionally a plus (+) or minus (-) sign, and then one or more digits.

Valid exponents are:

E0
E12
E+12
E-12
E0012

but not:

E
E12.34
E---5
e+13


expr

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents an expression. An expression (formula) starts with a basic value denoting object (expratom). Optionally, there may be more. If there is, first comes a (binary) operator, and then another basic value denoting object. The binary operator, in some cases, may be negated by a not sign ('). This additional part is called an exprtail. An expression may have any number of exprtails.


expratom

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents the basic value-denoting object of which expressions are built. An expratom can be a name of a local variable (with or without subscripts), a name of a global variable (with or without subscripts), a special variable name, a function-reference, a numeric literal, a string literal, another expression in parentheses, or a unary operator followed by an expratom.

Modified in the 1984 ANSI M[UMPS] language standard.

This metalanguage symbol represents the basic value-denoting object of which expressions are built. An expratom can be a name of a local variable (with or without subscripts), a name of a global variable (with or without subscripts), or an expritem.

Modified in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the basic value-denoting object of which expressions are built. An expratom can be a name of a local variable (with or without subscripts), a name of a global variable (with or without subscripts), a name of a structured system variable (which always has at least one subscript) or an expritem.

Approved for addition in a future ANSI M[UMPS] language standard.

An expratom may also be a reference to a property or a method of an object.


expritem

Introduced in the 1984 ANSI M[UMPS] language standard.

This metalanguage symbol represents a further refined value-denoting object of which expressions are built. An expritem can be a special variable name, a function-reference, a numeric literal, a string literal, another expression in parentheses, or a unary operator followed by an expratom.


exprtail

Introduced in the 1977 ANSI M[UMPS] language standard.

This metalanguage symbol represents the tail end of an expression. (See the metalanguage symbol expr).


externalroutinename

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the name of an external routine. Such a name looks like LABEL or LABEL^ROUTINE.


externref

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents a reference to an extrinsic variable, an extrinsic function or a subroutine that is not necessarily part of the current M[UMPS] environment. Such an external routine may be a M[UMPS] routine in the current environment or a routine (written in any language) in an externally available library.

Examples:

&PACKAGE.ROUTINE
&ROUTINE
&PACKAGE.LABEL^ROUTINE


extid

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the name of an external code processor.

Currently, the only external code processor is SQL (ANSI X3.135).

&SQL(SELECT * FROM PATIENT)

Additions in a future ANSI M[UMPS] language standard.

The names of external code processors are case insensitive.

&sql(cursor A on EMPLOYEE)

Implementors may include implementation specific extarnal code processors with names like &Zxxx.

&Zunix(grep MDC | more)

The text of the code to be passed to the external code processor may be empty

&ZOPSYS()


extractfields

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents a parameter of the intrinsic function $DEXTRACT. This parameter corresponds to the list of field widths and alignments within the data record that is about to be accessed by the function. Items in this list are separated by commas.


extracttemplate

Approved for inclusion in a future ANSI M[UMPS] Language standard.

This metalanguage symbol represents a parameter of the intrinsic function $DEXTRACT. This parameter corresponds to the specification of the list of field widths and alignments within the data record that is about to be accessed by the function.


extresource

Introduced in the 1995 ANSI M[UMPS] Windowing Application Programmer's Interface standard.

This metalanguage symbol represents the name of an external resource. This metalanguage symbol occurs as an expression. If the value to which it evaluates starts with "F,", the resource is a file, if the value starts with "R," it is any other resource. If the value starts with "Z", the meaning is implementation-specific.


extsyntax

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents the specification a code segment that is in a language other than M[UMPS]. A specification of external syntax starts with an ampersand (&), and is followed by the name of the external code processor, followed by a parenthesis open, followed by the text to be processed by the external code processor, followed by a parenthesis close.

The code to be processed by the external code processor may extend over more than one line. When this is the case, any continuation lines must start with the ampersand (&) symbol.

The code to be processed by the external code processor may only contain printable graphic characters (see the metalanguage symbol graphic).

Currently, the only external code processor is SQL (ANSI X3.135).


exttext

Introduced in the 1995 ANSI M[UMPS] language standard.

This metalanguage symbol represents text to be processed by an external code processor.

The code to be processed by the external code processor may extend over more than one line. When this is the case, any continuation lines must start with the ampersand (&) symbol.

The code to be processed by the external code processor may only contain printable graphic characters (see the metalanguage symbol graphic).

Approved for addition in a future ANSI M[UMPS] language standard.

Empty strings and blank lines are also permitted.


exvar

Introduced in the 1990 ANSI M[UMPS] language standard.

This metalanguage symbol represents an extrinsic variable name. An extrinsic variable name looks like $$LABEL or $$LABEL^ROUTINE (no off-set allowed in this specification).

Note: An extrinsic variable is equivalent to an extrinsic function without parameters, i.e. $$LABEL^ROUTINE has the same value as $$LABEL^ROUTINE().

Modified in the 1990 ANSI M[UMPS] language standard.

An extrinsic variable may also be a reference to an external resource, i.e. $&LABEL^ROUTINE or $&PACKAGE.LABEL^ROUTINE.


This document is © Ed de Moel, 1995-2005.
It is part of a book by Ed de Moel that is published under the title "M[UMPS] by Example" (ISBN 0-918118-42-5).
Printed copies of the book are no longer available.

This document describes the various metalanguage terms starting with the letter "E" that are used throughout the M[UMPS] standards, as well as some other terms that may not be obvious to all readers of the M[UMPS] language standards.

The information in this document is NOT authoritative and subject to be modified at any moment.
Please consult the appropriate (draft) language standard for an authoritative definition.

In this document, information is included that will appear in future standards.
The MDC cannot guarantee that these 'next' standards will indeed appear.