Turning effects into data

It's possible to compare the process of writing programs with modeling and describing a particular reality. For example, when you are writing an application for warehouse management, you are encoding in the rules of logic the concept of an online shop, its inventory, the place where the inventory is stored, and the rules according to which this inventory can be moved in and out of the warehouse. This is the reality of the business domain for which you are writing the application. We can say that your goal as a programmer is to model your business domain, that is, to encode it using your programming language into specific logical rules—to define the way information is to be stored, transformed, and interacted with. ...

Get Mastering Functional Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.