view demo/ref.ur @ 2248:e09c3dc102ef

Rewrite effectfulness analysis using MonoUtil.
author Ziv Scully <ziv@mit.edu>
date Sat, 15 Aug 2015 23:08:37 -0700
parents 5819fb63c93a
children
line wrap: on
line source
structure IR = RefFun.Make(struct
                               type data = int
                           end)

structure SR = RefFun.Make(struct
                               type data = string
                           end)

fun mutate () =
    ir <- IR.new 3;
    ir' <- IR.new 7;
    sr <- SR.new "hi";

    IR.write ir' 10;

    iv <- IR.read ir;
    iv' <- IR.read ir';
    sv <- SR.read sr;

    IR.delete ir;
    IR.delete ir';
    SR.delete sr;

    return <xml><body>
      {[iv]}, {[iv']}, {[sv]}
    </body></xml>

fun main () = return <xml><body>
  <form><submit action={mutate} value="Do some pointless stuff"/></form>
</body></xml>