19 lines · 379 B · Standard ML
RawDownload
let val r = ref []in r := [7]; !r end; fun Id x = let val r = ref x in !r end;fun Id' x = Id Id x; fun reverse l =  let val res = ref []      fun loop [] = !res        | loop (hd :: tl) = (res:= hd::(!res); loop tl)  in loop l end; reverse [1,2,3];reverse [true,false]; val f = fn x as ref u => (x := 666; (x, u));f (ref 99); let fun plus x y = x+y in plus 3 5 end;