src/Tools/Metis/src/Lazy.sig
changeset 23442 028e39e5e8f3
child 23510 4521fead5609
equal deleted inserted replaced
23441:ee218296d635 23442:028e39e5e8f3
       
     1 (* ========================================================================= *)
       
     2 (* SUPPORT FOR LAZY EVALUATION                                               *)
       
     3 (* Copyright (c) 2007 Joe Hurd, distributed under the GNU GPL version 2      *)
       
     4 (* ========================================================================= *)
       
     5 
       
     6 signature Lazy =
       
     7 sig
       
     8 
       
     9 type 'a lazy
       
    10 
       
    11 val delay : (unit -> 'a) -> 'a lazy
       
    12 
       
    13 val force : 'a lazy -> 'a
       
    14 
       
    15 val memoize : (unit -> 'a) -> unit -> 'a
       
    16 
       
    17 end