diff options
Diffstat (limited to 'demo/ref.ur')
-rw-r--r-- | demo/ref.ur | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/demo/ref.ur b/demo/ref.ur new file mode 100644 index 0000000..b21d40a --- /dev/null +++ b/demo/ref.ur @@ -0,0 +1,30 @@ +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> |