# Ways of using constructor of a parametric type

**URL:** https://discourse.julialang.org/t/ways-of-using-constructor-of-a-parametric-type/5944
**Category:** General Usage
**Tags:** parametric-types, constructors
**Created:** [September 18, 2017, 11:57am UTC](https://discourse.julialang.org/t/ways-of-using-constructor-of-a-parametric-type/5944 "2017-09-18T11:57:04Z")
**Posts on this page:** 1
**Showing post:** 2

<div class="post-metadata">

### Author: ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)
#### Post date: [September 18, 2017, 12:10pm UTC](https://discourse.julialang.org/t/ways-of-using-constructor-of-a-parametric-type/5944/2 "2017-09-18T12:10:14Z")

</div>

Nope, this is intended behavior. You are defining `Bar(...)` and `Baz{T}(...) where T` functions (which happen to be constructors), but not the other ones you are trying to call. See

> [@Anybody else find the new where syntax less than satisfactory?](https://discourse.julialang.org/t/anybody-else-find-the-new-where-syntax-less-than-satisfactory/4897/14):
>
> I explained the overall motivation for the where syntax in this StackOverflow answer: Partly quoting from there (with some clarifications and edits): Fundamentally, the problem with F{T}(args...) in Julia 0.5 and earlier is that the F{T} part is ambiguous – the parser knows what it means from the broader context, but its meaning depends heavily on that context. The fact that it can mean such different things is pretty confusing: In most contexts, F{T} means the parametric type F with type…

Also, `Foo{Number}(3)` does not work with your code in 0.6. Could it be the result of earlier experimentation?

---

_[View the full topic](https://discourse.julialang.org/t/ways-of-using-constructor-of-a-parametric-type/5944)._
