Right, like I said, often you can only figure out where things are coming from at runtime ... and that's going to be more true of languages without static typing, like Python. And yes, both extension methods and inheritance increase the distance from the use of its name to the implementation. And consider Scala's implicits, which are like extensions on steroids.
But I think that the OP made two arguments, and the first one was about the absence of namespaces resulting in prefixed names or other workarounds, and he gave a bunch of Julia examples ... that doesn't have anything to do with figuring out what a name references.
