# Basic question about different type annotations in function declarations

**URL:** https://discourse.julialang.org/t/basic-question-about-different-type-annotations-in-function-declarations/29086
**Category:** Performance
**Tags:** parametric-types
**Created:** [September 23, 2019, 6:46pm UTC](https://discourse.julialang.org/t/basic-question-about-different-type-annotations-in-function-declarations/29086 "2019-09-23T18:46:58Z")
**Posts on this page:** 1
**Showing post:** 5

<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: [September 23, 2019, 8:13pm UTC](https://discourse.julialang.org/t/basic-question-about-different-type-annotations-in-function-declarations/29086/5 "2019-09-23T20:13:09Z")

</div>

There is a subtle difference that 2 will force specialization, whereas the other two leave it to the compiler. At least this is how it used to be [Splatting arguments causes ~30x slow down - #2 by tim.holy](https://discourse.julialang.org/t/splatting-arguments-causes-30x-slow-down/16964/2).

---

_[View the full topic](https://discourse.julialang.org/t/basic-question-about-different-type-annotations-in-function-declarations/29086)._
