The parameter to MyType{} needs to be a type, but Joker() is an instance. 
 Just use  MyType{Joker}(4)

Cheers
Lex

On Friday, November 28, 2014 9:50:08 AM UTC+10, [email protected] 
wrote:
>
> Hello,
>
> Say I have a parametric type:
>
>     type MyType{T}
>          var1
>     end
>
>
>
> In the most of the case T is a simple integer, and there is no problem 
> with that. However, sometimes T is an instance of an singleton type, like:
>
>   
>   type Joker end
>
>
> Thus I would like to instantiate
>
> MyType{Joker()}(4)
>
> but I have the following error message:
>
>     ERROR: type: apply_type: in MyType, expected Type{T<:Top}, got Joker
>
>
>
> Reading this message, I understand that the parameters of the types have 
> to be define "at the top"... This seems true while 
> MyType{MyType{4}(3)}(2)
> throw a similar error message.
>
> In the documentation : 
> http://julia.readthedocs.org/en/latest/manual/types/#man-parametric-types 
> there is no mention of such a restriction (or I didn't find it!).
>
> How can I make `MyType{Joker()}(4)` work the way I want ?
>
> Regards,
> Sébastien
>

Reply via email to