declare fun lazy {LAppend As Bs} case As of nil then Bs [] A|Ar then A|{LAppend Ar Bs} end end L={LAppend "foo" "bar"} {Browse L} _ = {List.take L 2} _ = {List.take L 3} _ = {List.take L 4}