Drop links or images here to add them to the editor.

Tijdens sommige types berekeningen, herbruiken we vaak dezelfde waarde. Zo kan een hele collectie functie gebruik maken van eenzelfde Config-object, of kunnen een aantal statements uitgevoerd worden binnen dezelfde scope.

Daarbij krijgen we dan functie van de vorm:

alpha :: x1 -> x2 -> c -> x3
beta :: x4 -> c -> x5
gamma :: c -> x6

Deze c als laatste argument is wat onze Reader monad vormt:

alpha :: x1 -> x2 -> Reader c x3
beta :: x4 -> Reader c x5
gamma :: Reader c x6

Implementeer de Reader Monad en maak ervan gebruik in een gescopete interpreter.