# \[Pre-RFC\] named arguments

**URL:** <https://internals.rust-lang.org/t/pre-rfc-named-arguments/3831>\
**Category:** language design\
**Created:** [August 8, 2016, 9:57am UTC](https://internals.rust-lang.org/t/pre-rfc-named-arguments/3831 "2016-08-08T09:57:08Z")\
**Posts on this page:** 1\
**Showing post:** 295

<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, 2019, 7:18pm UTC](https://internals.rust-lang.org/t/pre-rfc-named-arguments/3831/295 "2019-07-07T19:18:53Z")

</div>

> [@197g](#):
>
> allowing the type of a struct be omitted but not adopting structural record types?

Yes, I think this (possibly combined with _anonymous_ struct types) would be better than structural records.

This came up in

> [@Idea: reducing boilerplate in APIs that use ADTs](https://internals.rust-lang.org/t/idea-reducing-boilerplate-in-apis-that-use-adts/4889):
>
> Rust doesn’t have named/keyword arguments yet, and there has already been several RFCs and discussions about it over hundreds of posts long. I admit I did not read most of that, so if I’m just repeating what had already been said, feel free to point me to the relevant discussions. Motivation The core idea is that I think Rust’s structs and enums are already quite good for expressing APIs, if only they could be a little more ergonomic (less boilerplate). Consider, for example, an API like this…

---

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