-- and with that we can do this:

withConnection :: String -> (Connection -> IO a) -> IO ()
withConnection dbname fn = undefined
withConnection :: String -> (Connection -> IO a) -> IO ()
withConnection dbname fn = undefined
withConnection dbname fn = undefined