What are all the mechanisms used to enable Servant’s type-based API?

Looking at the Servant paper for a full explanation may be the best option. Nevertheless, I’ll try to illustrate the approach taken by Servant here, by implementing “TinyServant”, a version of Servant reduced to the bare minimum. Sorry that this answer is so long. However, it’s still a bit shorter than the paper, and the … Read more