In this chapter, we will explore a different style of programming: functional programming. With this style, functions should only return something and not have other side effects, such as assigning a global variable. We will explore this by building a spreadsheet application.
Users can write calculations in this application. The spreadsheet contains a grid and every field of the grid can contain an expression that will be calculated. Such expressions can contain constants (numbers), operations (such as addition, multiplying), and they can reference other fields of the spreadsheet. We will write a parser, that can convert the string representation of such expressions into a data structure. Afterwards, we can calculate the results of the expressions with that data structure. If necessary, we will show errors such as division by zero to the user.
We will build this application using the following steps:
Setting up the project
Functional...