I am trying to learn a language purely for the joy of learning and exploring as many programming concepts/idioms/paradigms/expressiveness/algorithms as possible.<p>All I want is apply these languages into the prime purposes it was designed for, but on one condition that I can choose only one - either Dart or Go, after careful evaluation of languages out there.<p>I am not learning for career and big projects perspective. I have some small projects in mind mostly around web development.
Sorry, IMHO, But You want to explore concepts/idioms/paradigms but restrict youself by two programming languages very similar nature (ok, Go is not OOP in common sence).<p>Just look at different world: Clojure, Haskell, Ocaml, Erlang (maybe Elixir). Even Smalltalk shows you true priciples of OOP which are far from Java/C++ and close to Erlang processes/actors.<p>These languages force you to think different.<p>BTW, Elixir can really help you in Web projects because it has Phoenix LiveView framework.<p>Seaside framework for Pharo (Smalltalk) is very nice as well.