© Stefania Loredana Nita and Marius Mihailescu 2017

Stefania Loredana Nita and Marius Mihailescu, Practical Concurrent Haskell, https://doi.org/10.1007/978-1-4842-2781-7_12

12. Large-Scale Design in Haskell

Stefania Loredana Nita and Marius Mihailescu1

(1)Bucharest, Romania

There are approaches to manage the complexity of computations. We talked about some of them in previous chapters; here we will explain why they are used in large-scale design. We will also discuss new approaches and provide some examples.

The Type System

The type system is used to enforce abstractions and to simplify the interactions between the programmer and the environment. It imposes key invariants through types and ensures safety through checked exceptions (using Maybe

Get Practical Concurrent Haskell: With Big Data Applications 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.