For your first post, you're passing a type not an instance.

In any case, as said above try to avoid abstract type as field and prefers 
something like
Abstract A
Type B{T<:A}
   X::T 
End

For your final post look at the bit about covariance 
http://julia.readthedocs.org/en/latest/manual/types/

Reply via email to