Export functions included from different modules with the same name

Yes, this is impossible. It has been requested elsewhere (under the limitation you mention that the two functions take strictly different arguments) but I don’t know if it’s on anyone’s roadmap to do this (maybe by 2.0).

What you should do is have AB define close!, and then A and B add methods to it

# in AB

# no methods, just defining the name
function close! end

export close!
# in A
import AB: close!

close!(x) = #...
1 Like