Closed skydread1 closed 3 years ago
I added the Datafiable
and Navigable
protocols to clojure.core.protocols
.
I added the clojure.datafy
namespace to stdlib
.
I added requiring-resolve
to clojure.core
because it is called by datafy. I ignored the serialized-require
because I did not know how to deal with clojure.lang.RT/REQUIRE_LOCK
.
I was able to use datafy in the nostrand repl.
However, after adding clojure.datafy
to the build namespace it is ignored and not build for the bootstrapping.
I was able to generate the clojure.datafy.clj.dll
via the nostrand repl and added it to nostrand/references
but still, it is ignored while doing the bootstrapping.
It is bootstrapping now.
Another issue encountered was the fact that the clojure-clr
version was using in datafy.clj
(-> x class .Name symbol) ;; getName
However .Name won't return the fully qualified name so I replaced it by str
which seems to do the trick.
merged! thank you!
heads up -- adding vars to clojure.core
breaks the bootstrap because we compile clojure.core last. i added a mechanism to build.clj
to work around it here. that will have to be updated whenever new vars are introduced to clojure.core
until we resolve the load path issue that prevents clojure.core
from compiling first during bootstrap.
Problem
The protocols
Datafiable
andNavigable
are not present inclojure.core.protocols
.The namespace
datafy
is not present instdlib
.