Remix.run Logo
Seb-C a day ago

The problem is that Go is not designed to be a simple language for it's users, it's designed to be a simple language to implement for it's maintainers.

In my opinion, a simple language should be highly consistent (have a few rules, but which are universal and consistent everywhere). Instead we have a language with weirdnesses, inconsistencies and workarounds all over the place.

A good example is type elision: it's available when declaring arrays, slices and maps, but not for structs. Allowing that would have several benefits in terms of readability, and also allow named parameters via anonymous struct arguments (which would greatly improve the design compared to the ugly workarounds that are currently used).

a day ago | parent [-]
[deleted]