Мне было интересно, как неизменная карта F # работает со стандартным словарем.
См. Visual F # 2010 для технических вычислений стр. 241-242 «Оптимизация: используйте изменяемые структуры данных». Показывает Dictionary
, работающий в 5-40 раз быстрее, чем Map
в очень похожей настройке подсчета частот в дюймах в зависимости от количества уникальных ключей.
В общем, чисто функциональные структуры данных, такие как Map
, не только чрезвычайно медленны в последовательном случае, но и разрушают масштабируемость целых параллельных программ. Недавно я прочитал лекцию .
Кстати, не забывайте, что есть Seq.countBy
функция!