Let’s build a sample app that will demonstrate the benefits of applying functional programming concepts to Go.
Our app will read from the following cars.csv file:
"Honda Accord"
"Honda Accord ES2"
"Lexus IS250"
"Honda CR-V"
"Lexus SC 430"
"Ford F-150"
"Toyota Highlander"
"Toyota RAV4"
"GM Hummer H2"
"GM Hummer H3"
We will apply high-order functions and various functional programming constructs to the list of cars to filter, map, reduce, and transform it to our heart's content.
Our project is structured as follows:
$ tree
.
├── README.md
└── chapter4
├── 01_hof
│ ├── cars.csv
│ ├── cars.go
│ ├── generator.go
│...