Undefined at the type level

你。 提交于 2019-12-03 05:34:31

You can use EmptyDataDecls to stub out a type, and with KindSignatures you can give it a kind:

{-# LANGUAGE EmptyDataDecls, KindSignatures #-}

data Foo :: * -> *

You can also stub out the Monad instance without warnings with this option to GHC.

{-# OPTIONS_GHC -fno-warn-missing-methods #-}

instance Monad Foo

And then you don't need to leave any implementation for return and >>=.

This question was asked and answered a long time ago; best practices have evolved since.

These days, instead of undefined, for stubbing out code you should be using typed holes, and their type-level analogue, partial type signatures.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!