Неожиданный выбор между IntMap, Map HashMap и Array в haskell

Sep 15, 2018 14:11


Долго мучался выбирая между различными реализациями словарей в плане производительности операции объединения с функцией. Хотел для каждого (key,value) плодить маленькие локальные мапы, с последующим объединением. Своего рода, моноид. Но затем, неожиданно решил, что используя обратное отображение - окружения (соседних элементов) в текущую ячейку, будет проще с производительностью. и выбрал комонаду ZipList a = MkZip [a] !Int [a] вместо словарей. Посмотрим, действительно ли это проще и производительнее. Фактически это функциональный аналог указателей с дешевыми инкрементами.

Previous post Next post
Up