Text preview for : Mesa_4.0_Debugger_Update_May78.pdf part of xerox Mesa 4.0 Debugger Update May78 xerox mesa 4.0_1978 Mesa_4_Documentation Mesa_4.0_Debugger_Update_May78.pdf



Back to : Mesa_4.0_Debugger_Update_ | Home

Inter-Office Memorandum

To Mesa Users Date May 31, 1978


From Barbara Koalkin Location Palo Alto


Subject Mesa 4.0 Debugger Update Organization SDD/SD


XEROX
Filed on: [IRIS]DOC>DEBUGGER40.BRAVO




This release of the Mesa debugger introduces many changes of interest and importance to all
Mesa programmers. The purpose of this memo is to make you aware of the changes that
have taken place. More complete explanations may be found in the Mesa Debugger
Documentation.

Interpreter

The major addition to the Mesa 4.0 debugger is an interpreter that handles a subset of the
Mesa language; it is useful for common operations such as assignments, dereferencing,
indexing, field access, addressing, and simple type conversion. It is a powerful extension to
the current debugger command language, as it allows you to more closely specify your
variables while debugging, thus giving you more complete information with fewer
keystrokes. A subset of the Mesa language has been specified as being acceptable to the
interpreter (a copy of the grammar is attached to this memo).

Statement Syntax

Typing space (sp) to the command processor enables interpreting mode. At this point the
debugger is ready to interpret any expression that is valid in the (debugger) grammar.

Multiple statements are separated by semicolons; the last statement on a line should be
followed by a carriage return (CR). If the statement is a simple expression (ie., not an
assignment), the result is displayed after evaluation.

For example, to perform an assignment and print the result in one command, you would
type foo +- expj foo.

Loopholes

A more concise LOOPHOLE notation has been introduced to make it easy to display arbitrary
data in any format. The character "%" is used to denote LOOPHolE[exp, type], with the
expression on the left of the %, and the type on the right.

For example, the expression foo % short red Foo means LOOPHOLE the type of the variable
foo to be a short red Foo and display its value.