You need to pass a tuple to the constructor, i.e.: julia> x = Tuple{Int64} Tuple{Int64} julia> x((1,)) (1,)
On Friday, July 10, 2015 at 9:40:44 AM UTC-4, andrew cooke wrote: > > > sorry, more confusion... why doesn't this work? > > julia> Tuple{Int}(1) > ERROR: MethodError: `convert` has no method matching convert(::Type{Tuple{ > Int64}}, ::Int64) > This may have arisen from a call to the constructor Tuple{Int64}(...), > since type constructors fall back to convert methods. > Closest candidates are: > call{T}(::Type{T}, ::Any) > convert{T<:Tuple{Any,Vararg{Any}}}(::Type{T<:Tuple{Any,Vararg{Any}}}, :: > T<:Tuple{Any,Vararg{Any}}) > convert{T<:Tuple{Any,Vararg{Any}}}(::Type{T<:Tuple{Any,Vararg{Any}}}, :: > Tuple{Any,Vararg{Any}}) > ... > in call at essentials.jl:56 > > this does: > > julia> immutable Tuple2{A,B} > a::A > b::B > end > > julia> Tuple2{Int,Int}(1,2) > Tuple2{Int64,Int64}(1,2) > > and the docs at https://julia.readthedocs.org/en/latest/manual/types/ > seem to imply that's how Tuple should work too. > > thanks, > andrew > >