datatype list t = Nil | Cons of t * list t sequence s fun main () : transaction page = let fun getIndices srcs = case srcs of Nil => return Nil | Cons (src, srcs') => i <- nextval s; set src i; ls <- getIndices srcs'; return (Cons (i, ls)) fun show ls = case ls of Nil => | Cons (x, ls') => {[x]}
{show ls'}
in src1 <- source 0; src2 <- source 1; s <- source Nil; return