У меня есть одноместную функцию getRate:Как использовать parMap с монадической функцией?
getRate :: String -> IO Double
я хотел бы, чтобы отобразить эту функцию над списком струны. Как правило, я бы просто сделать:
mapM getRate ["foo", "bar"]
, но так как каждый вызов getRate делает сетевые вызовы, я хотел бы распараллелить карту таким образом, что каждая ставка забирается в отдельном потоке (или, по крайней мере, было распространено среди очередей). Я имею в виду что-то вроде
parMapM getRate ["foo", "bar"]
но нет функции parMapM и parMap не работает с монадических функциями.
Что я могу сделать?
Это идеальное решение - спасибо! – Bill