abstract EdgeAbstract
type Bus_Stop
id::Int64
edges::Dict{Bus_Stop, EdgeAbstract}
end
type Edge <: EdgeAbstract
src::Bus_Stop
tar::Bus_Stop
speed::Float64
distance::Float64
end
I have isolated the problem. It is this circular dependency that is
currently not supported in Julia that causes the loosely typed code and
memory allocation problem.
I subsequently remove the circular dependency and the abstract type. Now
the code works fast. So I have identified two much needed improvements.. 1)
circular dependency support, 2) Garbage collection improvement. Both I
believe are already under consideration.