function randomzap<a>(x:a):a=
let function f(y:a):a = if random() then
y else x
in f
end
これを使うサンプルは,以下のようになる.
let var i0 := randomzap<int>(0)
var s0 := randomzap<string>("zero")
in i0(3)+size(s0("three"))
end
function randomzap(a:type,x:a):a=
let function f(y:a):a =
let var s = sizeof(a)
in if random()
then y を s バイト返答にコピーする
else x を s バイト返答にコピーする
end
in f
end