What I want is a way to use Haskell syntax and types to create a monadic language overlay to write Erlang "algorithmic" code. I.e. write something that looks like Erlang syntactically, but is fully statically typed. For this I don't really need CCC. What I need is something that translates Erlang syntax to Haskell for type annotation.