@hipsterelectron I think you're vastly under appreciating that doing this would be rigorously specifying the *complete* contract of the dependency, or at least the parts you want to depend on. Which is in some sense equivalent to implementing it yourself in an idealized high level language.