extKanren module-toplevel Kleisli function added by sytse on Fri Feb 5 13:40:13 2021

($λ (() force-block?)
  (#[operative $assert] (not? force-block?))
  ($mlet ((#ignore (>> (|| (=<< /set ($dynamic-variable #[var #goal#] [settable])
                                     (constant "goal"))
                           (=<< /set ($dynamic-variable #[var #state#] [settable])
                                     (constant "state"))
                           (=<< /set ($dynamic-variable #[var #stream#] [settable])
                                     (constant "stream"))
                           (=<< /set ($dynamic-variable #[var #bad-stream#] [settable])
                                     (constant "invalid-stream")))
                       (|| (=<< /set ($dynamic-variable #[var #var#] [settable])
                                     (constant "var"))
                           (=<< /set ($dynamic-variable #[var #var-counter#] [settable])
                                     (constant 0)))
                       (|| (=<< /set ($dynamic-variable #[var #custom-unifier#] [settable])
                                     (constant ()))
                           (=<< /set ($dynamic-variable #[var #custom-≡-processor#] [settable])
                                     (constant ())))))
          (node17 ($dynamic-variable #[var *kernel-module-env*] [settable]))
          (node26 (=<< /environment
                       (pure ())
                       (constant (not-pairᵒ not-nullᵒ
                                            pairᵒ
                                            consᵒ
                                            nullᵒ
                                            ≡
                                            set-state-data
                                            state-data
                                            $run*
                                            $run
                                            $fresh
                                            $condᵉ
                                            conj
                                            disj
                                            fail
                                            succeed
                                            empty-state
                                            var
                                            appendᵒ
                                            $condᵃ
                                            stream-delays
                                            stream-pull
                                            stream-take-all
                                            stream-take
                                            ext-s*
                                            ext-s
                                            unify-triangular
                                            unify
                                            with-custom-≡-processor
                                            with-custom-unifier
                                            reify*
                                            reify
                                            $lazy-choice
                                            unit
                                            choice
                                            walk*
                                            walk
                                            var> (/set node17 node26)
        (^block-return #inert))))