Cuenta la frecuencia de las letras en textos mediante computación en paralelo.
El paralelismo consiste en hacer en paralelo cosas que también se pueden hacer de forma secuencial. Un ejemplo habitual es contar la frecuencia de letras. Utiliza el paralelismo para calcular la frecuencia total de cada letra en una lista de textos.
Tu código debe contener una función frequency :: Int -> [Text] -> Map Char Int que reciba un número de trabajadores para usar en paralelo y una lista de textos, y que devuelva la frecuencia total de cada letra del texto.
Comprueba cómo afecta al rendimiento de tu solución cambiar el número de
trabajadores ejecutando el benchmark. Usa stack bench para ejecutarlo. No dudes
en modificar bench/Benchmark.hs para explorar el rendimiento de tu solución con
distintas entradas.
Regístrate en Exercism para aprender y dominar Haskell con 107 ejercicios y mentoría humana real, todo gratis.
Exploramos las diferencias entre concurrencia y paralelismo, viendo los distintos enfoques que adoptan lenguajes como JavaScript, Go, Elixir y Rust.