logoalt Hacker News

Generic Methods in Go 1.27

54 pointsby EspressoGPTtoday at 3:41 PM25 commentsview on HN

Comments

throwaw12today at 5:08 PM

people working actively in "modern" Go codebases with generics, is it becoming like a Java/Spring kind of codebase?

I understand why you might need generics, but I hate how Java ecosystem exploits it so much that, reading code becomes so difficult, because it was inherited from 10 levels of parent classes and in some cases Java Beans get created based on generic types and their parent classes are abstract classes.

show 8 replies
tancoptoday at 4:20 PM

> Go’s interface system works at runtime. The specific type of a value passed into an interface parameter is resolved while the program runs. This dynamic dispatch clashes with generics being resolved at compile time.

What if the compiler generated both vtable and monomorphized variants for each method? Most calls would use the static version but places that need it like interface generics call the virtual method.

show 1 reply
DrCipherstoday at 6:27 PM

So Go is becoming Java?

show 2 replies
EdSchoutentoday at 5:02 PM

Go is often thought of as a successor of C. C doesn't have methods, only global functions. From my perspective, Go added methods primarily so that you can use them in combination with interfaces. Given that interfaces don't support generic methods, I'm personally not convinced that this feature was worth adding.

show 3 replies