while stmt takes lambda
while stmt takes blocks