# Syntactic sugar for specifying tuple function arguments

**URL:** <https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356>\
**Category:** Internals & Design\
**Created:** [January 8, 2017, 6:41pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356 "2017-01-08T18:41:35Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Stephen\_Vavasis](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stephen_vavasis/32/3389_2.png) [@Stephen\_Vavasis](https://discourse.julialang.org/u/Stephen_Vavasis)\
**Post date:** [January 8, 2017, 6:41pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/1 "2017-01-08T18:41:35Z")

</div>

Instead of

```julia
   function f(t::Tuple{Bool,Int})
      a = t[1]
      b = t[2]
   end

```

it would be nice to say:

```julia
  function f((a,b)::Tuple{Bool,Int})
  end

```

or even better:

```julia
  function f((a::Bool, b::Int))
  end

```

---

<div class="post-metadata">

**Author:** ![johnmyleswhite](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnmyleswhite/32/31_2.png) [@johnmyleswhite](https://discourse.julialang.org/u/johnmyleswhite)\
**Post date:** [January 8, 2017, 7:56pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/2 "2017-01-08T19:56:10Z")

</div>

Looks like you want ML-style pattern matching. Not sure whether most people are interested in this, but I’d support a PR that implements it.

---

<div class="post-metadata">

**Author:** ![cstjean](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cstjean/32/1444_2.png) [@cstjean](https://discourse.julialang.org/u/cstjean)\
**Post date:** [January 8, 2017, 8:03pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/3 "2017-01-08T20:03:03Z")

</div>

[https://github.com/JuliaLang/julia/issues/6614](https://github.com/JuliaLang/julia/issues/6614)

---

<div class="post-metadata">

**Author:** ![yuyichao](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yuyichao/32/20_2.png) [@yuyichao](https://discourse.julialang.org/u/yuyichao)\
**Post date:** [January 8, 2017, 10:48pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/4 "2017-01-08T22:48:23Z")

</div>

It does seem useful from time to time. I wonder why python3 gets rid of it.

---

<div class="post-metadata">

**Author:** ![andyferris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andyferris/32/235_2.png) [@andyferris](https://discourse.julialang.org/u/andyferris)\
**Post date:** [January 10, 2017, 3:15am UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/5 "2017-01-10T03:15:57Z")

</div>

I think this would be useful.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [January 26, 2017, 11:40pm UTC](https://discourse.julialang.org/t/syntactic-sugar-for-specifying-tuple-function-arguments/1356/6 "2017-01-26T23:40:45Z")

</div>

Definitely useful, mostly a matter of someone implementing it.
