4 ms·
> There are no changes to the language. Are there other mainstream languages that are as conservative as Go when it comes to adding new features? I don't love
by pansa2 6y ago
> There are no changes to the language.
Are there other mainstream languages that are as conservative as Go when it comes to adding new features?
I don't love Go as a language, but coming from C++ and Python, both of which have non-stop accumulation of features (and complexity), Go's philosophy is a breath of fresh air.
- mdasen 6y agoPossibly Scheme or Racket? S-expression, functional languages don't seem to accumulate language features at an incredible rate (but I don't use them frequently so someone might correctly contradict me). I too like Go's restraint. It really doesn't want to give you a tool to make a one-liner that is easy to conceal a bug. For example, Go's increment (eg, i++) is a statement, not an expression. You can't do list[++i] or anything. There are parts of Go that I'm less a fan of, but they keep a nice eye toward making sure that the code is understandable and reviewable.
- psanford 6y agoThe Go 1.x compatibility promise is one of Go's best features.
- naikrovek 6y agoYes. Though, I wonder how much more the language could be improved if it weren't tied down to the bad decisions of the past. Those must all continue in perpetuity while the compatibility promise is kept.
- dmitshur 6y agoRelevant bit from Brad's 2016 talk on this topic: https://www.youtube.com/watch?v=4Dr8FXs9aJM&t=169 https://www.youtube.com/watch?v=4Dr8FXs9aJM&t=169 I can't help but laugh each time I see it.
- wilsonthewhale 6y agoNot sure if it counts as "mainstream", but Clojure has been stable for years and years. The core data structure manipulation functions are there and they simply work. The last really big change was transducers, and even those were nicely retrofitted onto the core functions without any breaking changes.
- strzibny 6y agoElixir. They even announced that the language is now final.