Today I’m releasing pqi. It makes libpq a choice rather than a hard dependency for PostgreSQL drivers: write against one interface, then swap a single dependency to pick your transport - battle-tested C, or an experimental pure-Haskell adapter. I’m already migrating “hasql” to it. Should be easy to migrate “postgresql-simple” too.
Here’s my blog post about it all: pqi: Making "libpq" a Choice, Not a Requirement – Functional programming debugs you