如何创建需要积分列表的函数

hum*_*der -2 haskell

所以我正在学习Haskell上学,并在learnyouahaskell学习函数,语法和类型类,并且想知道我会创建一个以Integral列表作为参数的函数吗?

如果我正确理解这一点:

addVectors :: (Num a) => (a,a) -> (a,a) -> (a,a)
addVectors (x1,y1) (x2,y2) = (x1 + x2, y1 + y2)
Run Code Online (Sandbox Code Playgroud)

addVectors接受两组,基本上所有参数都必须是Number类?但是,如果我想要它列入数字或积分列表呢?

addList :: (Integral [b]) => [b] -> [b]
Run Code Online (Sandbox Code Playgroud)

但这显然不起作用.

mel*_*ene 5

addList :: (Integral b) => [b] -> [b]
Run Code Online (Sandbox Code Playgroud)

这里我们说b类型必须是一个实例Integral,并且addList接受并返回一个bs 列表.