back to notes

servant

My opinion is that while it is useful to promote some API details to the type level (in order to get compile-time feedback) it becomes a problem when the type level is the only mode of expression, combined with a framework that restricts those choices even further.

Servant's issue is that that *every* detail about the API becomes a dilemma about whether/how to express it at the type level, when the real payoff from typelevel should be incremental improvements for compile-time feedback


last updated january 2018