TargetArchitecture.mesa
Copyright Ó 1988 by Xerox Corporation. All rights reserved.
James Rauen, June 15, 1988 12:59:11 pm PDT
This file contains type declarations for the Casaba base types related to the target architecture. The TargetInt, TargetReal, TargetBoolean, and TargetRope base types represent (respectively) INT's, REAL's, BOOLEAN's, and ROPE's on the target machine. The Target type encapsulates all the architecture-specific operations of the target machine.
DIRECTORY
Rope USING [ROPE];
TargetArchitecture: CEDAR DEFINITIONS ~ BEGIN
TargetIntNode: TYPE ~ REF TargetIntNodeBody;
TargetIntNodeBody: TYPE ~ REF ANY;
TargetRealNode: TYPE ~ REF TargetRealNodeBody;
TargetRealNodeBody: TYPE ~ REF ANY;
TargetBooleanNode: TYPE ~ REF TargetBooleanNodeBody;
TargetBooleanNodeBody: TYPE ~ REF ANY;
TargetRopeNode: TYPE ~ REF TargetRopeNodeBody;
TargetRopeNodeBody: TYPE ~ REF ANY;
TargetNode: TYPE ~ REF TargetNodeBody;
TargetNodeBody: TYPE ~ RECORD [
operations: TargetOperations
];
TargetOperations: TYPE ~ REF TargetOperationsRec;
TargetOperationsRec: TYPE ~ RECORD [
Integer operations.
MakeIntBase8: PROC [Rope.ROPE] RETURNS [TargetIntNode],
MakeIntBase10: PROC [Rope.ROPE] RETURNS [TargetIntNode],
MakeIntBase16: PROC [Rope.ROPE] RETURNS [TargetIntNode],
IntAdd: PROC [TargetIntNode, TargetIntNode] RETURNS [TargetIntNode],
IntSubtract: PROC [TargetIntNode, TargetIntNode] RETURNS [TargetIntNode],
IntMultiply: PROC [TargetIntNode, TargetIntNode] RETURNS [TargetIntNode],
Boolean operations.
True: PROC RETURNS [TargetBooleanNode],
False: PROC RETURNS [TargetBooleanNode],
And: PROC [TargetBooleanNode, TargetBooleanNode] RETURNS [TargetBooleanNode],
Or: PROC [TargetBooleanNode, TargetBooleanNode] RETURNS [TargetBooleanNode],
Not: PROC [TargetBooleanNode] RETURNS [TargetBooleanNode]
];
END.