Technologicat / imacropy

Interactive MacroPy - IPython REPL, embeddable REPL, bootstrapper.
BSD 2-Clause "Simplified" License
9 stars 2 forks source link

Upgrade macro imports to pythonic semantics #8

Open Technologicat opened 4 years ago

Technologicat commented 4 years ago

To deal with name conflicts in macro imports, the least surprise requires that we follow Python's regular import semantics (latest definition of a particular name wins).

So we should upgrade both consoles to behave that way. This allows shortening the explanation.

MacroPy's detect_macros() has no side effects other than triggering imports, so we can manage the macro bindings ourselves. The bindings are held in the object we hand to the macro expander.

Technologicat commented 3 years ago

This issue is resolved in the third-generation macro expander mcpyrate, which includes a more advanced version of imacropy.

Technologicat commented 3 years ago

This project is now obsolete.