2.5 control
This exercise is optional.
Refer to the exercise policy for details.
Write an implementation of logic programming (i.e. nondeterministic
choice with backtracking) using either first-class continuations or
double-barrelled continuation-passing style. (You should implement
=succeed, =fail, =and2, and
=or2 at a minimum.) Add logic variables and unification to
have a full Prolog interpreter.