Thanks to its simplicity, i thought the Go language made contributions easier.

However, because of some missing features, people are encouraged to use design patterns. And a design pattern choice can lead to a lot of discussions...

More concretely, Go doesn't provide optional function arguments. People then introduces the "functional options pattern" [1]. And because it's not part of the language, it's subject to long discussions during code reviews.


· · Web · 1 · 1 · 3

@lewo Yep, I've seen this approach, taking varargs and just ignoring all but the first, having a giant `FooParams` struct. All mixed up in the same codebases.

I've come to really dislike Go. They arbitrarily define "simplicity" as "small language surface area." This makes it easy to learn, but difficult to use, since it's almost always missing some basic thing & you have to paper over the gaps.

Sign in to participate in the conversation
La Quadrature du Net - Mastodon - Media Fédéré est une serveur Mastodon francophone, géré par La Quadrature du Net.