Recursive closure
= Recursive closure
A <programming closure> whose defining <semantic environment> contains a binding for that same <programming closure>. In a host with <lazy evaluation>, this can be represented by a recursive data definition without first running the function's body.