How is Functional Thinking? I'm starting to write a toy SAT solver in scala and I could probably benefit from some good,non-trivial design examples
A quick rundown of some high level keywords I jotted down while reading. Map, Reduce/Fold, Filter, Apply, Curry, Partial Application, Memoization, Lazy Loading / Streams, Either / Option in Scala.
Some of those languages are more functional than others. I'd put them on a scale from least functional to most like so:
Java 8 (least functional)
Apache Groovy
Java 9
Scala
Clojure (most functional)