# Why no := operator for initializing variables

**URL:** <https://discourse.julialang.org/t/why-no-operator-for-initializing-variables/62949>\
**Category:** Internals & Design\
**Created:** [June 15, 2021, 2:08pm UTC](https://discourse.julialang.org/t/why-no-operator-for-initializing-variables/62949 "2021-06-15T14:08:23Z")\
**Posts on this page:** 1\
**Showing post:** 11

<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:** [June 15, 2021, 3:49pm UTC](https://discourse.julialang.org/t/why-no-operator-for-initializing-variables/62949/11 "2021-06-15T15:49:35Z")

</div>

AFAIK not requiring explicit declarations for locals was an explicit design choice for Julia. Cf eg

> [@Why not an even-harder scope?](https://discourse.julialang.org/t/why-not-an-even-harder-scope/50087/14):
>
> Having a lot of time thinking about it, I really believe that our current design is very close to optimal given just these assumptions: Locals may be implicitly declared by assignment The rules for all local scopes are the same The language has closures. There are languages where all variables have to be explicitly declared, i.e. you have to write var x or local x to declare a new local. This, of course, makes all problems relating to what scope an assignment assigns to go away: it’s the inne…

---

_[View the full topic](https://discourse.julialang.org/t/why-no-operator-for-initializing-variables/62949)._
