X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=code%2Freader2.ml;h=bf561aadcea2914384dfa18498bc3f83f72c741f;hp=10d61e3ebfe25f13d98cfb82bff62d21f28cfa1b;hb=ad14f269d489cc9a2ea9e522e2da37a42cfd46b3;hpb=16c94123a19df2a70cb8c11d661bdbd2f72b4e10 diff --git a/code/reader2.ml b/code/reader2.ml index 10d61e3e..bf561aad 100644 --- a/code/reader2.ml +++ b/code/reader2.ml @@ -4,8 +4,8 @@ module rec E : sig end = E and R : Monad.READER with type env = E.env = struct type env = E.env - module Made = Monad.Reader(E) - include Made.M + module R_E = Monad.Reader(E) + include = R_E.M end @@ -33,5 +33,5 @@ let letf ff body = R.(ff >>= fun f -> shift (insert 'f' (E.Fun f)) body) (* monadic version of `let x = 2 in let f = \y -> y + x in f 3` *) let (expr4 : int R.t) = R.(letx (mid 2) (letf (mid lambda1) (getf >>= fun f -> f (mid 3)))) -let res = R.run expr4 env0 +let res = R.run expr4 env0 (* will be 5 *)