In this chapter, we started by exploring the concept of immutability. We looked into its importance and benefits with examples. Then we looked at cases for mutability and went through an example to compare mutability and immutability effects on our code.
Finally, we explored the means to get and set immutable objects in a functional way, such as copy constructors and lenses.
In the following chapter, we will be introduced to OOP, protocol-oriented programming (POP), and Functional Reactive Programming (FRP). Then, we will explore the concept of mixing OOP and FP paradigms, in other words, object functional programming.