Undefined at the type level

前端 未结 2 1485
遥遥无期
遥遥无期 2021-02-07 00:41

Often when I\'m playing with Haskell code, I stub things out with a type annotation and undefined.

foo :: String -> Int
foo = undefined
         


        
2条回答
  •  借酒劲吻你
    2021-02-07 01:36

    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 >>=.

提交回复
热议问题