true-name

Template Haskell hack to violate module abstractions

https://github.com/liyang/true-name

Version on this page:0.1.0.1
LTS Haskell 14.27:0.1.0.3@rev:1
Stackage Nightly 2019-09-21:0.1.0.3@rev:1
Latest on Hackage:0.1.0.3@rev:2

See all snapshots true-name appears in

BSD-3-Clause licensed by Liyang HU
Maintained by [email protected]
This version can be pinned in stack with:true-name-0.1.0.1@sha256:b223d85640e6b582c9a2180d8fedc805ae320eaf582920349b559488ebf9c1cb,1684

Module documentation for 0.1.0.1

Knowing a true name gives one power over its owner.

A Template Haskell hack to get unexported Names―be they types, data constructors, record fields or class methods―a slightly less unsafe way to violate another module's abstractions than unsafeCoerce.

A few quick examples.

I'm too lazy to keep a changelog, but I do write detailed commit messages.