I don't think Any in the same position is a conflict. This would be more of an issue if Julia did not support strong typing, but it does and is a requirement of dynamic dispatch. Consider
function foo( x::Any ) Will never be chosen over Type Foo end function foo( x::Foo ) As such I don't get the argument that if I define functions against types I define they cause conflicts. Being in the position of having implemented a good number of modules and being bitten in this way both by my own dev and by changes to other modules I'm very concerned with the direction being taken. I do think formalization of interfaces to modules ( and behaviors) would go a long way but expecting a diverse group of people to coordinate is not going to happen without strong and enforced constructs. As an example I have implemented a document store database interface, this is well represented by an associative collection. It also has a few specific methods which would apply to many databases. It would be nice to be able to share the definition of these common interfaces. I don't advocate adding these to base so how should it be done?
