3 ms·
These are not languages for wide masses, TBH; they often require a paradigm shift, and you need to change how you approach the problems. Take, for example, Sche
by dig1 3y ago
These are not languages for wide masses, TBH; they often require a paradigm shift, and you need to change how you approach the problems. Take, for example, Scheme - it doesn't have for/while loops out of the box, yet you can build a CLOS-like OO system on top of it (which can be considered one of the most powerful OO systems out there). Clojure doesn't allow you to mutate variables but has a killer multithreading ability without complicating the language (compared to Scala or Rust). Common Lisp adds a ton of stuff not found in mainstream languages: CLOS, loop DSL, macros that will generate macros that will create macros, and so on.
Quite similar is with other non-lispy languages: Haskell, OCaml, APL dialects... Yes, they are often superior (code is more concise, expressive, or faster), but the mainstream prefers to stay in the comfort zone of C-like languages and the way of thinking.