# To Adopt mandatory semicolon in method calls if kwargs are passed

**URL:** <https://discourse.julialang.org/t/to-adopt-mandatory-semicolon-in-method-calls-if-kwargs-are-passed/43651>\
**Category:** Internals & Design\
**Tags:** proposal\
**Created:** [July 25, 2020, 1:56am UTC](https://discourse.julialang.org/t/to-adopt-mandatory-semicolon-in-method-calls-if-kwargs-are-passed/43651 "2020-07-25T01:56:48Z")\
**Posts on this page:** 1\
**Showing post:** 4

<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:** [July 25, 2020, 4:00am UTC](https://discourse.julialang.org/t/to-adopt-mandatory-semicolon-in-method-calls-if-kwargs-are-passed/43651/4 "2020-07-25T04:00:42Z")

</div>

> [@Kwargs in new(), or safer ways of constructing immutable structs](https://discourse.julialang.org/t/kwargs-in-new-or-safer-ways-of-constructing-immutable-structs/43555/1):
>
> > [@Kwargs in new(), or safer ways of constructing immutable structs](https://discourse.julialang.org/t/kwargs-in-new-or-safer-ways-of-constructing-immutable-structs/43555/1):
> >
> > I find that aligning the arguments to `new()` with the order of the struct fields to be quite tedious and error prone (especially if adjacent fields have the same type, or I add / reorder types).

I’m not saying you can’t have named argument for `new`. I’m saying that if you want to add such support, it doesn’t need any help to distringuish between them. In particular, a named argument can’t have any other meaning.

> [@josePereiro](#):
>
> Yes, a solution that do not change how dispatch works and add the features people already like from other languages can be found. What is proposed do not touch dispatch, I think?

Yes. I’m not making any argument about [Allow use of named-argument syntax for positional arguments?](https://discourse.julialang.org/t/allow-use-of-named-argument-syntax-for-positional-arguments/5287). I’m simply saying the semicolon is completely unrelated and unimportant.

> [@josePereiro](#):
>
> That’s ok, I just wanted to focus on the idea of make semicolon mandatory because help to solve other problems/issues

Right, and I’m saying that the idea of making semicolon madatory helps none of the problems/issues. Those are all not done for much deeper reasons and it doesn’t make sense to talk about this syntax without any concusion on those.

And just to make it more clear, I’m not making **any** argument for or against any of the new syntax you are proposing. I’m simply saying that none of what you are proposing are related to semicolons.

* * *

And again, a non-“mandatory” semicolon simply means that the semicolon does not change the meaning, this is only the case when put in front of named arguments in function call. The only reason one would want to change it would be to give named argument before and after the semicolon a different meaning. That’s the only thing the discussion should focus on but there’s no such proposal here other than the linked thread.

---

_[View the full topic](https://discourse.julialang.org/t/to-adopt-mandatory-semicolon-in-method-calls-if-kwargs-are-passed/43651)._
