I'm using Julia 0.4.0 on Mac OS X 10.10.5. I'd like to put some code into a 
module, but I'm having some trouble with namespaces. The following fails 
(`UndefVarError: test.a not defined`) when enclosed inside `module test`. 
When outside the module, e.g. pasted into the REPL, the code works fine. 
Could someone point me to relevant reading material or explain what is 
going on?  It seems I can avoid the problem by putting the string "a" in 
the dictionary instead of the abstract type, but I want to know why I am 
unable to do things as written. Thank you for your patience as I am new to 
the language.

module test 

abstract a 

dict = Dict("key" => a) 

function createType(typeName::ASCIIString,supertype::DataType)

typeSymb = symbol(typeName)
superSymb = symbol(supertype)
@eval immutable ($typeSymb){T} <: $superSymb

num::Float64

end

end

createType("b",dict["key"])

end

Reply via email to