15.3.3 Finite Domain Functor

We next define a functor that accounts for domains of atoms or integers and for products of domains.

<domain.oz>=
functor 
import 
   I(sum:Sum
     prod:Prod) at 'x-ozlib://oz-kurs/domains/int.ozf' 
export 
   Make    %% list(feature) -> domain
   Product %% list(domain) -> domain
 
   
<type domain> 
define 
   
<Make Domain> 
   
<Product of Domains> 
end                              


Denys Duchier, Claire Gardent and Joachim Niehren
Version 1.3.99 (20050412)