<> <> DIRECTORY Atom, Rope, IO, AlgebraClasses, Basics; AlgebraClassesImpl: CEDAR PROGRAM IMPORTS Atom EXPORTS AlgebraClasses = BEGIN OPEN AlgebraClasses; <> FlavorToRope: PUBLIC PROC [flavor: ClassFlavor] RETURNS [rope: Rope.ROPE]~ { SELECT flavor FROM group => RETURN["Group"]; ring => RETURN["Ring"]; field => RETURN["Field"]; vectorSpace => RETURN["Vector Space"]; algebra => RETURN["Algebra"]; divisionAlgebra => RETURN["Division Algebra"]; ENDCASE; }; GetProperty: PUBLIC PROC [structure: Structure, prop: ATOM] RETURNS [val: REF _ NIL] ~ { RETURN[Atom.GetPropFromList[structure.class.propList, prop] ]; }; END.