<> <> <> <<>> DIRECTORY MathExpr USING [EXPR], Rope USING [ROPE], ViewerClasses USING [Viewer], ViewExpr USING [Create, GetContents, SetContents], MathCommunication; MathCommunicationImpl: CEDAR PROGRAM IMPORTS ViewExpr EXPORTS MathCommunication ~ BEGIN EXPR: TYPE ~ MathExpr.EXPR; ROPE: TYPE ~ Rope.ROPE; Viewer: TYPE ~ ViewerClasses.Viewer; Create: PUBLIC PROC[expr: EXPR _ NIL, name: ROPE] RETURNS[Viewer] ~ { <> << containing the expression expr. If expr = NIL, viewer will>> << contain an empty expression "plcaeholder".>> RETURN[ViewExpr.Create[expr, name]]; }; SetContents: PUBLIC PROC[viewer: Viewer, expr: EXPR] ~ { <> <> << to be expr.>> ViewExpr.SetContents[viewer, expr]; }; GetContents: PUBLIC PROC[viewer: Viewer] RETURNS[ROPE] ~ { <> << a format understood by the AlgebraStructures parser.>> RETURN[ViewExpr.GetContents[viewer]]; }; END.