In this chapter, you have gained a lot of power from Clojure with a few new primitives.
As you can see, there are plenty of ways to interact with your current codebase; specifically, you can now:
Use Java code from Clojure
Use Clojure code from Java
Reuse Java frameworks by creating objects that adhere to their contracts
With all of our new tools in mind, we are ready to tackle more concepts and a little bit more complexity with collections and data structures.