Collections and functional programming in Clojure are extremely powerful tools that allow us to use a completely different paradigm of programming.
Here's what we have learned so far:
The mechanics of immutable collections and what each collection type in Clojure is best for
How sequence abstraction and how a lot of Clojure functions are available to work on collections, using this abstraction
How functional programming enables us to write simpler programs that work better in parallel environments and help us save resources using laziness
In the subsequent chapters, we will learn about other new Clojure features that give us a new and much more powerful way to implement polymorphism than what Java offers.