3 ms·
You hit the main gripe I have with Go, its types system is so basic. I get people raving type-correctness of Go when they come from Python but the type system i
by DanielHB 2y ago
You hit the main gripe I have with Go, its types system is so basic. I get people raving type-correctness of Go when they come from Python but the type system in Go is simply pre-historic by modern day standards.
- masklinn 2y agoGo’s type system is not even impressive compared to python’s.
- orwin 2y agoDo you have a pydantic equivalent in go? Also modern typing in python is starting to be OK to be honest (well, if you consider typescript typing OK), so it isn't really a knock on Go :)
- Yoric 2y ago> Do you have a pydantic equivalent in go? I've been working on one [1]. But gosh, does go make it hard. [1] https://github.com/pasqal-io/godasse https://github.com/pasqal-io/godasse
- DanielHB 2y agoWell I was comparing to python codebases before they added type annotations
- Yoric 2y agoWhich, sadly, is still the case of too many dependencies. While I much prefer Python as a language, Go wins against Python by having a fresher ecosystem, with a higher baseline for type safety. Still pretty low with respect to Rust or mypy/pyright with highest settings, but much better than any of the Python frameworks I've had to deal with.
- yyyfb 2y agoI feel that the future for Python people who want type safety will eventually be TypeScript on nodejs. Go was intended as an alternative to C++. It seems that in reaction to the ungodly complexity of C++, the creators wanted to avoid adding language features as hard as possible. If the user could work around it with a little extra verbosity, it'd be ok. I feel they removed too much and maybe not the right things.