4 ms·
> Proper algebraic data types, typeclasses + constraints instead of inheritance, good concise syntax -- there are better type systems out there but most people
by gher-shyu3i 5y ago
> Proper algebraic data types, typeclasses + constraints instead of inheritance, good concise syntax -- there are better type systems out there but most people have only used Java/C#
What's ironic is that both Java and C# are getting ADTs (sum types) and pattern matching. Java already gives you exhaustive pattern matching with the upgraded switch statement. I think C# has a proposal for an HKT-like capability, though not sure how far along that is or how much of a priority it is.
- hardwaresofton 5y agoIt's like merecedes and the car world -- the good features get passed down from the research languages to the pragmatic get-shit-done and enterprise languages, this is how the system is supposed to work, I guess.
- gher-shyu3i 5y agoTrue. What's sad is that we had already known that generics, proper error handling, and enums were a good thing when golang was first written, yet they were purposefully ignored.