I’ve made the code for this library (previously described here) available via a repository on github:
It’s still experimental, so I don’t intend to put it on hackage until I have (or someone else has) a dependency on it.
The actual VE GADT in the source has an extra type parameter intended to let the generated UIs depend on context. Where this is not necessary, the ConstE type may be supplied. Hence, in the actual code the type
VE ConstE a corresponds to
VE a in the previous blog post.