previous up next
Go backward to Quantification and Modules
Go up to Top
Go forward to A Circle Package
RISC-Linz logo

Parametric Modules

type ExtendedPointWRT[PointRep] =
   PointWRT[PointRep] &
   {add: (PointRep x PointRep) -> PointRep}

type ExtendedPoint =
   exists PointRep. ExtendedPointWRT[PointRep]

value extendPointPackage =
   fun(pointPackage: Point)
   open pointPackage as p[PointRep] in
      pack[PointRep' = PointRep
         in ExtendedPointWRT[PointRep']]
      p &
     {add = fun(a: PointRep, b: PointRep)

value extendedCartesianPointPackage =

Author: Wolfgang Schreiner
Last Modification: May 27, 1998

previous up next