<> <> LeastSq: CEDAR DEFINITIONS = BEGIN PointSet: TYPE = REF PointSetRec _ NIL; PointSetRec: TYPE = RECORD [ count: INT _ 0, rows: SEQUENCE rowDim: NAT OF Row ]; Row: TYPE = REF RowRec _ NIL; RowRec: TYPE = RECORD [ entries: SEQUENCE colDim: NAT OF REAL ]; <> <> <> <<>> NewPointSet: PROC [ dim: NAT ] RETURNS [ ps: PointSet ]; AddPoint: PROC [ ps: PointSet, pt: Row, weight: REAL _ 1.0 ]; <<>> LeastSqFit: PROC [ ps: PointSet ] RETURNS [ eq: Row ]; END.