[Haskell] нубский вопрос про возвращение значения оперделённого типа
Код функции в студию.
return навешивает монаду. Т.е. выражение "return x", где тип x - Т, будет иметь тип M T. Это то что ты хочешь? (есть подозрение, что ты do-блок и return используешь не к месту)
Наверное. Прошёл этот момент через error, но неприятно
Че-нить типа return (False, [] :: [Type]) не сработает?
Что можно сделать?Привести хотя бы кусок кода
Ибо такие ошибки обычно возникают не из-за самой функции, а из-за ее использования где-то
Например, если у тя объявлена какая-то функция с операндом типа 'a' и ты его неявно как-нить используешь (правда, тогда бы он упоминал 'rigid variable', но хз какой кусок ошибки ты отрезал)
2
Если бы он накосячил с монадами, ошибка была бы несколько другого вида. Хотя и похожая.
Если мне не изменяет память, монадой не является (в отличии от []). Так что ругань другая должна была бы быть.
Другое дело, что почти наверняка они там не к месту
Кстати, что такое "оперделённый тип"?
ну, опердолили его, а спеллчекер прососал
Оставить комментарий
sergdob
Из do-блока, т.е. через return.Функция возвращает что-то вроде (Bool, [Type]).
Из do-блока делаю return (False,[]) - интерпретатор ghci ругается, что
PS Имена типов вымышленные.
Что можно сделать?