Hmm, maybe you do need the type object? This gives a weird error:
struct Dataset
end
struct Duals
end
# === ABSTRACT FACTORY TYPE ===
abstract type SubProblem end
function make_sub_problem{T}(dataset::Dataset, duals::Duals) where T <: SubProblem
error("oops")
end
ERROR: LoadError: UndefVarError: make_sub_problem not defined
Stacktrace:
[1] top-level scope at /tmp/test.jl:9
in expression starting at /tmp/test.jl:9
Like, yes, make_sub_problem is not yet defined? I’m in the progress of defining it?..