def bake(ingredients) {
var has := null
def cake {
to eat() {
cake.have()
return ingredients
}
to have() {
return has := def had {
match m {
require(has == had)
E.callWithPair(cake, m)
}
}
}
}
return cake.have()
}
--
Kevin Reid <http://homepage.mac.com/kpreid/>