This seems a bit confusing: ``` julia> Expr(:<:, :X, :Int) :(X<:Int)
julia> Expr(:<:, :X, :Int).head :<: julia> :(X<:Int) :(X <: Int) julia> :(X<:Int).head :comparison ``` Is this intentional? This also means that copy-pasting the string representation of `Expr(:<:, :X, :Int)` does not yield itself.
