conv.

← The whole story
Tech
Rust dev argues structs beat named arguments for API design

Developer publishes essay defending Rust's struct-based approach to function parameters

An author responding to Steve Klabnik's earlier piece on named arguments publishes "We Have Named Arguments at Home," arguing that Rust can achieve 80% of the ergonomics of named, optional, and default arguments without adding language features. The essay contends that using structs as argument bundles is superior because it makes parameter groupings semantically meaningful and avoids hidden calling convention complexity.

“I actually think we can get most of what we want without adding any new language features. Instead, we can lean into what Rust already provides.”

itamarst

itamarst Rust developer / authorSteve Klabnik Rust contributor (referenced)ekuber Rust team member

The whole story postscomments the bright band is this development · numbered dots are the others · click one to jump

Peak 8 pieces in one hour at Sep 24, 3 PM; 33 pieces over 2 days (2 posts · 31 comments) Sep 24, 12 PM — 5 pieces · 2 posts · 3 comments — Lobsters 4, Hacker News 1Sep 24, 1 PM — 1 piece · 1 comment — Lobsters 1Sep 24, 2 PM — 5 pieces · 5 comments — Lobsters 5Sep 24, 3 PM — 8 pieces · 8 comments — Lobsters 8Sep 24, 4 PM — 3 pieces · 3 comments — Lobsters 3Sep 24, 5 PM — 7 pieces · 7 comments — Lobsters 7Sep 24, 6 PM — 4 pieces · 4 comments — Lobsters 4Sep 24, 7 PM — quietSep 24, 8 PM — quietSep 24, 9 PM — quietSep 24, 10 PM — quietSep 24, 11 PM — quietYesterday, 12 AM — quietYesterday, 1 AM — quietYesterday, 2 AM — quietYesterday, 3 AM — quietYesterday, 4 AM — quietYesterday, 5 AM — quietYesterday, 6 AM — quietYesterday, 7 AM — quietYesterday, 8 AM — quietYesterday, 9 AM — quietYesterday, 10 AM — quietYesterday, 11 AM — quietYesterday, 12 PM — quietYesterday, 1 PM — quietYesterday, 2 PM — quietYesterday, 3 PM — quietYesterday, 4 PM — quietYesterday, 5 PM — quietYesterday, 6 PM — quietYesterday, 7 PM — quietYesterday, 8 PM — quietYesterday, 9 PM — quietYesterday, 10 PM — quietYesterday, 11 PM — quietToday, 12 AM — quietToday, 1 AM — quietToday, 2 AM — quietToday, 3 AM — quietToday, 4 AM — quietToday, 5 AM — quietToday, 6 AM — quietToday, 7 AM — quietToday, 8 AM — quietToday, 9 AM — quietToday, 10 AM — quietToday, 11 AM — quietToday, 12 PM — quietToday, 1 PM — quiet 1–23–45–6
yesterdaytodaynow · 2:52 PM ET

All 6 developments of Rust dev argues structs beat named arguments for API design →

LobstersHacker News