[...]
>
> If I already have a function f(), then the semantics of how the 
> mymodule.f()'s methods get merged in are clearly defined by the existing 
> dispatch rules, no special module rules are needed.
>
> The problem as I see it is that there is no information available to Julia 
that f() in one module has any logical equivalence to f() in another 
module, eg

module plants
type Tree ... end
bark(t::Tree) = rough or smooth etc
end

module canines
type Dog ... end
bark(snoopy::Dog) = send audio to speakers
end

Clearly it makes no logical sense to combine the bark() functions into some 
sort of "meta-function" outside the modules, they represent completely 
different concepts.

But as you say combining mathematical operators makes sense.

So it would seem that there needs to be a way of specifying these 
combinations if we want them.

Cheers
Lex
 
[...] 

Reply via email to