Also, is there a reason you jumped to Clojure? Do you have any specific reasons as to why you would recommend it? I'm open to picking up just about any functional language as long as I can use it for more than implementing Fibonacci numbers.
Also, is there a reason you jumped to Clojure? Do you have any specific reasons as to why you would recommend it? I'm open to picking up just about any functional language as long as I can use it for more than implementing Fibonacci numbers.
I'm using CoffeeScript (node & angular) currently, but Clojure has transformed the way I code (way less imperatively).
My only problem with Clojure: its syntax doesn't help me understand structure... so to me, Clojure is difficult to read.
But if you're prepared to think differently, you can learn how with a functional programming language, then apply everywhere...
Note: I've used Scala, I do like it, but it didn't make me a fp programmer... I guess I should give it another try someday. I prefer its syntax (over Clojure), except for types (and occasional syntax ambiguities). It was a mixed Java/Scala project, so I didn't use Scala collections much...
Scala itself doesn't seem bad, but my gripe is just getting a working project set up. With sbt, I know I have to create a few files just to get up and running. Not knowing Maven syntax - can be embedded in sbt, I think - or sbt itself, I don't find it appealing to learn that kind of tooling outside of work.
I've recommended Lighttable because it's a very dynamic editor: it has a REPL, it can evaluate every line you type. It makes it easier to learn: no apparent compilation.
I dream of using Lighttable to develop something... Check this video: it's in Javascript, but it shows why Lighttable is so amazing (https://www.youtube.com/watch?v=52SVAMM3V78)