# Typing Question

**URL:** <https://discourse.julialang.org/t/typing-question/111315>\
**Category:** General Usage\
**Tags:** question, type\
**Created:** [March 7, 2024, 6:39pm UTC](https://discourse.julialang.org/t/typing-question/111315 "2024-03-07T18:39:16Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![irslushy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/irslushy/32/207578_2.png) [@irslushy](https://discourse.julialang.org/u/irslushy)\
**Post date:** [March 7, 2024, 6:39pm UTC](https://discourse.julialang.org/t/typing-question/111315/1 "2024-03-07T18:39:16Z")

</div>

Hello!

Why is it that

```julia
Union{Missing, Float64} <: Union{Any} 

```

yields

```julia
true

```

but

```julia
Matrix{Union{Missing, Float64}} <: Matrix{Union{Any}}

```

yields

```julia
false

```

---

<div class="post-metadata">

**Author:** ![Mason](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mason/32/2423_2.png) [@Mason](https://discourse.julialang.org/u/Mason)\
**Post date:** [March 7, 2024, 6:54pm UTC](https://discourse.julialang.org/t/typing-question/111315/2 "2024-03-07T18:54:15Z")

</div>

[Julia’s type system uses invariant type parameters](https://docs.julialang.org/en/v1/manual/types/#man-parametric-composite-types).

You instead want

```julia
julia> Matrix{Union{Missing, Float64}} <: Matrix{<:Union{Any}}
true

```

or

```julia
julia> Matrix{<:Union{Missing, Float64}} <: Matrix{<:Union{Any}}
true

```

---

<div class="post-metadata">

**Author:** ![ianfiske](https://avatars.discourse-cdn.com/v4/letter/i/58f4c7/32.png) [@ianfiske](https://discourse.julialang.org/u/ianfiske)\
**Post date:** [March 7, 2024, 6:54pm UTC](https://discourse.julialang.org/t/typing-question/111315/3 "2024-03-07T18:54:17Z")

</div>

This is an example of how Julia’s type parameters are invariant. This is discussed in some depth in [Types · The Julia Language](https://docs.julialang.org/en/v1/manual/types/#man-parametric-composite-types).
