This repository was archived by the owner on May 20, 2018. It is now read-only.

Description
When you write a module B and it depends on a module A, any clients depending on B also end up depending on A. This acts transitively, too, such that anything depending on a module C, itself depending on B, will import all of A, all of B, and all of C (the one they actually meant).
This is only going to lead to dependency hell.
We need to be able to evaluate terms in B without requiring the environment & context to already contain the definitions from A.