Like I said in Manu's thread, we can actually do this already,
via pragma(mangle) hacks. That's brittle, the compiler doesn't
tell you if you messed up the signature, but it works and gives
answers to a lot of the questions in this thread.
class A {
void foo();
}
pragma(mangle, A.foo.mangleof)
void foo_impl(A _this) {}
That's compile and run today. Things to note:
* The name is figured out by regular importing rules. A is
whatever A is in schope.
* foo_impl might as well not exist as far as the outside world is
concerned. It just is A.foo.
* I think the privacy should work this same way too: if it is in
the same module, it can see private members, if not, it can't.