procedure main() every j := 1 to 4 do { i:=0 (i<-j) > 2 #NB. i<-j undone if j>2 fails, if j<=2, and i<-j resumed. write("i=",i, " j=",j) } end # Reversible Assignment <-, from 11.8.2 p120 Icon Programming Language 1983.