# Leave first type unspecified

**URL:** <https://discourse.julialang.org/t/leave-first-type-unspecified/31661>\
**Category:** General Usage\
**Created:** [November 29, 2019, 2:59pm UTC](https://discourse.julialang.org/t/leave-first-type-unspecified/31661 "2019-11-29T14:59:44Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![matthieu](https://avatars.discourse-cdn.com/v4/letter/m/da6949/32.png) [@matthieu](https://discourse.julialang.org/u/matthieu)\
**Post date:** [November 29, 2019, 2:59pm UTC](https://discourse.julialang.org/t/leave-first-type-unspecified/31661/1 "2019-11-29T14:59:44Z")

</div>

Suppose I have a type with multiple parameters and that I want to define a function that dispatch only on the second parameter. Is there a way to leave the first parameter unspecified?

As an example, I would like to define this function below without defining `N` since I don’t use it in the body of the function

```julia
function f(x::NTuple{N, <: AbstractVector}) where {N}
   ...
end

```

---

<div class="post-metadata">

**Author:** ![mauro3](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mauro3/32/292_2.png) [@mauro3](https://discourse.julialang.org/u/mauro3)\
**Post date:** [November 29, 2019, 3:58pm UTC](https://discourse.julialang.org/t/leave-first-type-unspecified/31661/2 "2019-11-29T15:58:55Z")

</div>

This is correct. You could have an alias which swaps type-parameters and then you could get rid of the `N`:

```julia
const MyNTuple{T,N} = NTuple{N,T}
function f(x::MyNTuple{<:AbstractVector})
...
end

```
