Haskell: определение продукта с помощью Foldr

Я пытаюсь определитьproduct сfoldr:

Я мог бы сделать это с:

new_product xs = foldr (*) 1 xs

но нет:

new_product = foldr (*) 1

или же:

new_product = \xs -> foldr (*) 1 xs

Оба определения выдают одну и ту же ошибку:

Нет экземпляра для (Foldable t0), возникающего в результате использования «папки»

Переменная типа ‘t0’ неоднозначна

Соответствующие привязки включают

new_product :: t0 Integer -> Integer

Это какая-то ошибка типа?

Как я мог это исправить?

Ответы на вопрос(1)

Ваш ответ на вопрос