# Pre-RFC: Named arguments

**URL:** <https://internals.rust-lang.org/t/pre-rfc-named-arguments/16413>\
**Category:** language design\
**Created:** [April 2, 2022, 9:27pm UTC](https://internals.rust-lang.org/t/pre-rfc-named-arguments/16413 "2022-04-02T21:27:07Z")\
**Posts on this page:** 1\
**Showing post:** 112

<div class="post-metadata">

**Author:** ![scottmcm](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/scottmcm/32/2355_2.png) [@scottmcm](https://internals.rust-lang.org/u/scottmcm)\
**Post date:** [July 7, 2022, 7:24pm UTC](https://internals.rust-lang.org/t/pre-rfc-named-arguments/16413/112 "2022-07-07T19:24:29Z")

</div>

> [@Ichoran](#):
>
> It's all just dispatch to overloaded names.

It's not the same, because you have to decide when you're resolving those names. See _Two-phase Lookup_, _Koenig Lookup_ in C++ for the kinds of horrible things that end up happening with ad-hoc overloading.

Putting the traits in the middle makes a huge difference. See [Justification for Rust not Supporting Function Overloading (directly) - #3 by scottmcm](https://internals.rust-lang.org/t/justification-for-rust-not-supporting-function-overloading-directly/7012/3)

---

_[View the full topic](https://internals.rust-lang.org/t/pre-rfc-named-arguments/16413)._
