News for hackers. Stuff that matters.
Re:Go Contracts – Draft Design by jsty on Monday July 29, 2019 @09:17AM (#20554267)
Probably because they don't want people talking cross-purposes or confusing their proposals with what is implemented in other languages, as they call out in the intro:

"As the term generic is widely used in the Go community, we will use it below as a shorthand to mean a function or type that takes type parameters. Don't confuse the term generic as used in this design with the same term in other languages like C++, C#, Java, or Rust; they have similarities but are not the same."

Re:Go Contracts – Draft Design by iainmerrick on Monday July 29, 2019 @09:35AM (#20554417)
Those four languages all have completely different implementations of parameterized types, but calling them all “generics” doesn’t add any extra confusion.

To the contrary, it’s actually helpful to use the same word for something with roughly the same uses (eg generic type-safe container classes) even if the details are very different.

Re:Go Contracts – Draft Design by nemith on Monday July 29, 2019 @11:44AM (#20555774)
Contract is just the feature is defines the abilities of the genericized types.

A contract in Go enables generic programming or as other state it "generics".

In C++20 there is concepts which is very similar. https://en.wikipedia.org/wiki/Concepts_(C%2B%2B) in constraining the generic type before template expansion.

Re:Go Contracts – Draft Design by pjmlp on Tuesday July 30, 2019 @03:34AM (#20562813)
Contracts in programming language have a very precise meaning.

https://en.wikipedia.org/wiki/Design_by_contract

Re:Go Contracts – Draft Design by jsty on Monday July 29, 2019 @09:55AM (#20554597)
I don't particularly disagree. My point was more that given what the authors wrote in the quoted sentence, I thought that - rightly or wrongly - was likely the reasoning behind the naming decision.