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] ~ { RETURN[ViewExpr.Create[expr, name]]; }; SetContents: PUBLIC PROC[viewer: Viewer, expr: EXPR] ~ { ViewExpr.SetContents[viewer, expr]; }; GetContents: PUBLIC PROC[viewer: Viewer] RETURNS[ROPE] ~ { RETURN[ViewExpr.GetContents[viewer]]; }; END. <MathCommunicationImpl.mesa Carl Waldspurger, July 31, 1986 5:01:52 pm PDT Communications between AlgebraStructures (Dennis Arnon) and MED (Carl Waldspurger) effects: Constructs and returns a new math expression viewer containing the expression expr. If expr = NIL, viewer will contain an empty expression "plcaeholder". modifies: viewer effects: Changes the contents of math expression viewer viewer to be expr. effects: Returns the contents of viewer as a ROPE in a format understood by the AlgebraStructures parser. Κ¦˜Jšœ™Jšœ.™.J˜JšœR™RJ™codešΟk ˜ Kšœ œœ˜Kšœœœ˜Kšœœ ˜Kšœ œ$˜2Kšœ˜—J˜šΟnœœœ˜%Jšœ ˜Jšœ˜J˜š˜J˜Jšœœ œ˜Jšœœœ˜Jšœœ˜$J˜J˜J˜šžœœœœœœœ ˜EJšœ=™=JšœF™FJšœ4™4Jšœ˜$J˜J˜—šž œœœœ˜8Jšœ™Jšœ@™@Jšœ™J˜#J˜J˜—š ž œœœœœ˜:Jšœ6™6Jšœ>™>Jšœ˜%J˜J˜—J˜—Jšœ˜——…—Žp