В процессе изучения языка решил немного попрактиковаться и реализовать простейшую хэш-таблицу с цепочками. Собственно реализация самой таблицы, простейшей хэш-функции и примеры использоваия получившегося я выложил здесь: https://gist.github.com/1616657
Уважаемые местные штангисты! Если вам не лень, ткните носом, пожалуйста, где я облажался и как можно было сделать лучше.
Основной вопрос у меня пока - как избежать вот такого явного указания типов хэш-функции при её передаче в момент создания:
intHash = (createHash (divHashForSize :: (Integer -> Integer -> Integer)) 10)
strHash = (createHash (divHashForSize :: (Integer -> String -> Integer)) 10)
А без этого - не компиляется. Чувствую, что здесь что-то не так.
Заранее спасибо!