Haskell,没有附带的装订?
这是我的计划(我意识到这不是一个完全有用的计划): 我不断收到错误信息: Haskellfile.lhs:3:3: “length”的类型签名缺少附带的绑定 (不能为导入的值提供类型签名) 有人能帮忙吗Haskell,没有附带的装订?,haskell,Haskell,这是我的计划(我意识到这不是一个完全有用的计划): 我不断收到错误信息: Haskellfile.lhs:3:3: “length”的类型签名缺少附带的绑定 (不能为导入的值提供类型签名) 有人能帮忙吗 data Temp a = Something1 | Something2 deriving (Show,Eq,Ord) length :: Temp a -> Integer length Something1 = 0 length Something2 = 1 最好将长度更改为其他
data Temp a = Something1 | Something2 deriving (Show,Eq,Ord)
length :: Temp a -> Integer
length Something1 = 0
length Something2 = 1
最好将长度
更改为其他内容,以避免与前奏曲的长度冲突。如果要将长度用作“默认值”,请添加
在开头,请使用Prelude.length
参考Prelude的版本。不推荐
顺便说一句,如果你的Temp
不依赖于a
,你可以考虑
data Temp = Something1 | Something2 deriving (Show,Eq,Ord)
@用户997112没问题。任何人都会这样。继续学习!如果导出
长度
函数,则在大多数情况下,第二个版本更可取;然后用户就可以导入合格的。
import Prelude hiding (length)
import qualified Prelude
data Temp = Something1 | Something2 deriving (Show,Eq,Ord)