nasser / magic

Morgan And Grand Iron Clojure
http://nas.sr/magic/
365 stars 17 forks source link

Full Bootstrap #195

Closed nasser closed 4 years ago

nasser commented 4 years ago

MAGIC still depends on the ClojureCLR compiler to run. In theory it is capable of bootstrapping, so that the full ClojureCLR dependency can be dropped in favor of the minimal ClojureCLR runtime, but we've struggled with bootstrapping tools.analyzer, possibly because of the redefinition of some dynamic vars.

nasser commented 4 years ago

We were actually generating some invalid IL in tools.analyzer, but fixing that didn't resolve this issue. Commenting out clojure.tools.analyzer/analyze-let allows compilation to complete correctly, so something is going wrong in that function.

nasser commented 4 years ago

This is more or less working, pending a few issues.

nasser commented 4 years ago

MAGIC can fully bootstrap from a patched nostrand with

nos build/boostrap :portable