There are many programming languages today vying for your consideration, especially the “hot” (or “cool!”) new languages like Ceylon, Crystal, Dart, Elixir, Elm, Go, Haxe, Julia, Kotlin, Rust, Swift, TypeScript. And new ones seem to be popping up every month!
Even some of the not-so-new languages are grabbing attention, languages like Clojure, Erlang, F#, Haskell, Lua, OCaml, Scala. Some of these languages are decades old!
So it got me wondering: What makes a programming language, regardless of age, trendy and exciting? Why does 27-year-old Haskell still get tongues wagging? How can 31-year-old Erlang instill passion after all these years? What’s with the love for 24-year-old Lua? F# is still talked about fondly, even though it has 12 years of history behind it.
Of course, one of the main reasons is the growing interest in functional programming over the past several years. Thus, people are examining all of their functional options, including languages that predate Java (which often gets unfairly labelled as old and senescent).
Erlang is notable for OTP (Open Telecom Platform) and its Erlang runtime system (BEAM), which makes Erlang remarkable for writing distributed, fault-tolerant applications.
Clojure capitalizes on the power and elegance of Lisp. Lua is popular in the game industry as an embeddable language. Kotlin and Scala attempt to improve on Java, the most popular programming language on the planet.
Dart and Elm offer alternatives to widely despised JavaScript. Rust promises memory safety. Julia is a technological tour de force.
So it would seem that these languages are trendy for various reasons. Except for functional programming, there really isn’t a pattern. Even 7-year-old Go has risen to the top of the language charts by virtue of being simple and minimalist, without any language design innovation whatsoever!
Then how do we explain the fact that Smalltalk gets so little attention today? It has everything going for it…
Smalltalk is extremely versatile (being a general-purpose programming language and all):
And I’ve just barely scratched the surface!
Smalltalk deserves a place among the “hot” (or “cool!”) new languages like Elixir, Elm, Go, Julia, Kotlin, Rust. After all, Pharo is only 9 years old.