A nicer hack would be to use the isdefined function:

julia> isdefined(:Stats)
false

julia> import Stats

julia> isdefined(:Stats)
true

On 30 April 2014 19:09, Matt Bauman <[email protected]> wrote:
> Is there a robust way to test if a Module has already been imported?  Some
> modules take a very long time to load, and in some contexts it might be
> nicer to check to see if the functionality is there before spending 30
> seconds loading it and all its dependencies.
>
> The naive :FooModule in names(Main) fails if I reference FooModule later in
> the same namespace.  I can get around that by adding another scope (like a
> macro or secondary function), but that's a bit of a pain.  Is there a better
> way?
>
> julia> f() = :FooModule in names(Main) && (println("has FooModule");
> FooModule.bar())
> f (generic function with 1 method)
>
> julia> f()
> has FooModule
> ERROR: FooModule not defined
>  in f at none:1

Reply via email to