gpt4 book ai didi

haskell - 无法创建 Num 的派生实例

转载 作者:行者123 更新时间:2023-12-02 07:19:26 24 4
gpt4 key购买 nike

我正在使用ghci,此代码部分

newtype Gold = Gold Int
deriving (Eq, Ord, Show, Num)

将错误显示为

Can't make a derived instance of 'Num Gold':
'Num' is not a derivable class
Try GeneralizedNewTypeDeriving for GHC's newtype-deriving extension in the newtype declaration for 'Gold'

请提出解决方案。

最佳答案

您只能从 EqOrdEnumBoundedShow 派生code> 和自动读取。为了派生其他实例,您需要按照 GHCi 的建议启用 GeneralizedNewtypeDeriving 扩展:

{-# LANGUAGE GeneralizedNewtypeDeriving #-}

newtype Gold = Gold Int
deriving (Eq, Ord, Show, Num)

请注意,{-# ... #-} 不是注释,而是 compiler pragma ,在本例中启用给定的语言扩展。

关于haskell - 无法创建 Num 的派生实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25603641/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com