3 ms·
> increasingly unwieldy as projects get bigger and bigger. This applies to any project in any language. How would it be worse in Go versus Kotlin or Typescript
by H1Supreme 5y ago
> increasingly unwieldy as projects get bigger and bigger.
This applies to any project in any language. How would it be worse in Go versus Kotlin or Typescript?
- The_rationalist 5y agoThere are many features in such languages that allow to reduce cognitive overhead, such as null safety.
- sanderjd 5y agoYep, as the other commenter said, languages scale differently because of the entire suite of different and interacting features. I know it's cliche to say, but I still believe it's true, that Go suffers from lacking generics, particularly as a project grows. I see big projects with lots of `interface{}` usage to work around this, and at that point the type system is essentially equivalent to Python's, which in my view is harder to maintain at scale. This seems a lot more common in big Go projects than use of Object in big Java projects, for instance, and I think it's a smell. I also think nil-based error handling is harder to maintain than languages with no nulls, or strongly discouraged nulls (but most languages have this problem). I don't have a good sense for how well the concurrency functionality in Go scales, but I get the sense that it's pretty good, and superior to most other languages, including the other ones in this thread.