Suppose I have a program which I can install via cabal, for example
cabal install pandoc
Is it possible to use checkinstall to make a .deb package out of this and install it in a second step via dpkg?
There seems to be a program called "cabal-debian" that converts a cabal file into a debian package (ala checkinstall) and allows you to install it via apt/dpkg. It's provided by the package "haskell-debian-utils". The manpage & description for it can be found at http://manpages.ubuntu.com/manpages/natty/man1/cabal-debian.1.html.
Looks like running "cabal-debian --debianize --ghc", then "dpkg -i" whatever debs come out will achieve what you want.