Related Works Futamura and Ootani [3] Basis of this research Pseudo-associativity, similar analysis on pointer Liu and Stoller [5] Also uses destructive operations, for flipping input listinside-out manner; ours is outside-in Continuation Passing Appel [1] for example The output is eagerly evaluated in our approach Difference List Stering and Shapiro [7] for example Common in logic programming; rare in functional programming