author | wenzelm |
Sat, 07 Apr 2012 16:41:59 +0200 | |
changeset 47389 | e8552cba702d |
parent 39502 | cffceed8e7fa |
child 72004 | 913162a47d9f |
permissions | -rw-r--r-- |
39348 | 1 |
(* ========================================================================= *) |
2 |
(* SUPPORT FOR LAZY EVALUATION *) |
|
39502 | 3 |
(* Copyright (c) 2007 Joe Hurd, distributed under the BSD License *) |
39348 | 4 |
(* ========================================================================= *) |
5 |
||
6 |
signature Lazy = |
|
7 |
sig |
|
8 |
||
9 |
type 'a lazy |
|
10 |
||
11 |
val quickly : 'a -> 'a lazy |
|
12 |
||
13 |
val delay : (unit -> 'a) -> 'a lazy |
|
14 |
||
15 |
val force : 'a lazy -> 'a |
|
16 |
||
17 |
val memoize : (unit -> 'a) -> unit -> 'a |
|
18 |
||
19 |
end |