Your type’s definition doesn’t seem to depend upon T in any way. Keep in mind
that the type is really just the first two lines of your code:
type Myt{T <: Real}
n::Int64
chain::Array
end
The constructor isn’t part of the type itself, so the dependency on T needs to
occur in the type.
— John
On Jun 11, 2014, at 8:04 AM, Florian Oswald <[email protected]> wrote:
> Hi,
>
> I'm trying to understand why this is not working:
>
> type Myt{ T<:Real}
> n :: Int64
> chain :: Array
> function Myt(n,z::T)
> x = [z for i=1:n]
> new(n,x)
> end
> end
>
> i get the error
> julia> Myt(10,18.0)
> ERROR: no method Myt{T<:Real}(Int64, Float64)
>
> I thought that was very similar to the point example on the manual?
>
> type Point{T<:Real}
> x::T
> y::T
>
> Point(x::T, y::T) = new(x,y)
> end
>
> thanks
>