@hackage reflection2.1.9

Reifies arbitrary terms into types that can be reflected back into terms

This package addresses the configuration problem which is propagating configurations that are available at run-time, allowing multiple configurations to coexist without resorting to mutable global variables or System.IO.Unsafe.unsafePerformIO.

That package is an implementation of the ideas presented in the paper "Functional Pearl: Implicit Configurations" by Oleg Kiselyov and Chung-chieh Shan (original paper). However, the API has been streamlined to improve performance.

There are a handful of tutorials on how to use this library: