3 ms·
> Before long, scammy tutorials pop up showing Go as an essentially dynamic language Sorry are you saying adding generics to Go makes Go closer to dynamic lang
by rustc 5y ago
> Before long, scammy tutorials pop up showing Go as an essentially dynamic language
Sorry are you saying adding generics to Go makes Go closer to dynamic languages? Shouldn't that be the opposite?
> I knew a person who insisted on a lot of things when working in a Go code base...one of which was mixed typed tuples. It was ugly, awful code of interfaces all the way down. It's ugly and Go let you know that. A voice of reason would say...what are you doing? That's not how you do it in Go.
Do you have an example of this (code)? What's wrong with tuples with elements of different types? What's the alternative?
- masklinn 5y agoGo doesn't even have tuples, where would those even come from?
- silisili 5y agoSo, mixed typed tuples was the idea, but Go doesn't support either of those things, so it ended up as a [][10]interface{} or some such. So for each item in the slice, type assert all 10 things inside the subarray. Luckily the comments had a key of expected types of each.
- riwsky 5y agoYour problem isn’t generics or any other language features; your problem is a lack of effective code review or technical leadership.
- rustc 5y agoThat would be exactly the thing generics are supposed to fix (except that Go doesn't have tuples yet, but at least you can define your own now and return a generic `Tuple[A, B]`). Regardless of that, returning a tuple of size 10, especially with different types, would almost always be a bad idea.