DIRECTORY Rope, IO, AlgebraClasses; Points: CEDAR DEFINITIONS ~ BEGIN OPEN Rope, AC: AlgebraClasses; Point: TYPE = AC.Object; PointData: TYPE = REF PointDataRec; PointDataRec: TYPE = RECORD [ SEQUENCE dimensionPlus1:[1..65534] OF AC.Object ]; pointStructureClass: AC.StructureClass; PointStructureData: TYPE = REF PointStructureDataRec; PointStructureDataRec: TYPE = RECORD [ coordinateStructure: AC.Structure, dimension: NAT ]; PointOps: TYPE = REF PointOpsRec; -- prop key is $PointStructure. PointOpsRec: TYPE = RECORD [ removeMainCoordinate: AC.UnaryOp, mainCoordinate: AC.UnaryOp ]; MakePointStructure: PROC [coordinateStructure: AC.Structure, dimension: NAT] RETURNS [pointStructure: AC.Structure]; IsPointStructure: PROC [structure: AC.Structure] RETURNS [BOOL]; RemoveMainCoordinate: PROC [structure: AC.Structure] RETURNS [AC.UnaryOp]; MainCoordinate: PROC [structure: AC.Structure] RETURNS [AC.UnaryOp]; Read: AC.ReadOp; FromRope: AC.FromRopeOp; ToRope: AC.ToRopeOp; Write: AC.WriteOp; Equal: AC.EqualityOp; RemoveMainCood: AC.UnaryOp; MainCood: AC.UnaryOp; END. ΆPoints.mesa Last Edited by: Arnon, May 3, 1986 3:53:47 pm PDT External direct product constructor. If base structure is a ring or field, module or vector space constructor may be more appropriate. Point Representation Class for Point Structures Instance Data for Point Structures Operations Unique to Point Structures Point Structure Constructor Extract Point Operations from Class Property Lists Conversion and IO Operations Κƒ˜Jšœ ™ J™1J˜J˜Jšœ‡™‡J™šΟk ˜ Icodešœ˜Kšœ˜Kšœ˜—head2šΟnœœ ˜J˜—Jšœœœœ˜'headšž™Jšœœœ˜J˜Jšœ œœ˜#J˜šœœœ˜Jšœœœ˜/Jšœ˜——šœ™Kšœœ˜'—šœ"™"Kšœœœ˜5šœœœ˜&Kšœœ ˜"Kšœ ˜K˜——šœ%™%Kšœ œœΟc˜Ašœ œœ˜Kšœœ ˜!Kšœœ˜K˜——šœ™š žœœœœœœ ˜tJ™——šœ2™2š žœœ œ œœ˜@K™—š žœœ œ œœ ˜JK™—Kš žœœ œ œœ ˜D—šœ™šžœœ˜J˜—šžœœ ˜J˜—šžœœ ˜J˜—Jšžœ ˜—šž ™ šžœœ ˜J˜—šžœœ ˜K˜—šžœœ ˜K˜—J˜—Jšœ˜—…—@y