Difference between using and importall
Suppose we want to extend a function called bar
in the Foo
package. When we do it by using, we need include the package name too:
julia> using Foo julia> function Foo.bar(...)
But when we do it by importall
, we are not required to include the package name:
julia> importall Foo julia> function bar(...)
When we use importall
, function bar(...)
, and function Foo.bar(...)
are equivalent.
This prevents us from accidentally extending a function that we didn't want to extend or didn't know about, and saves us from possibly breaking future implementations of Foo
.