((block (define [fun _ _]
(infer :procedure (gen [x] (gen [y] (+ x y)))
:inputs [3]
:output-trace? true))
fun)
4)
ClassCastException clojure.lang.Atom cannot be cast to clojure.lang.IFn metaprob.examples.all/eval9041 (form-init4440039299882098981.clj:113)
Here the inner gen procedure is created by the metacircular interpreter. Currently such procedures are not callable from clojure; formerly this was impossible because there was no way to maneuver the lexical environment into the clojure copy of the code. But now we have the environment and it should be possible to make this work.
Here the inner
gen
procedure is created by the metacircular interpreter. Currently such procedures are not callable from clojure; formerly this was impossible because there was no way to maneuver the lexical environment into the clojure copy of the code. But now we have the environment and it should be possible to make this work.