У меня возникает эта проблема, функция вычисляет принимает IO типа, и у меня уже есть функция , которая возвращает то же самое, но принимает ее как ее тип. Ниже мой код. Я искал по сети в течение некоторого времени, но мне не удалось исправить мою ошибку. Спасибо за вашу помощь.Использование аргументов IO monad без IO
pureCalculate :: Expr (Double -> Double -> Double) -> Map.Map String Double -> Double
calculate :: IO(Expr (Double -> Double -> Double)) -> Map.Map String Double -> IO Double
calculate expr args =
do let x = pureCalculate expr args
return x