I want to use the list-tries package for a little hobby project, but my naive idea about how it should work is obviously wrong:
module TryPat where
import Data.ListTrie.Patricia.Map
a = singleton "harry" 99
yields the error:
No instance for (Data.ListTrie.Base.Map.Map map0 Char)
arising from a use of `singleton'
Possible fix:
add an instance declaration for
(Data.ListTrie.Base.Map.Map map0 Char)
In the expression: singleton "harry" 99
In an equation for `a': a = singleton "harry" 99
Now, there is some stuff about this in the docs:
The data types are parametrized over the map type they use internally to
store the child nodes: this allows extending them to support different kinds
of key types or increasing efficiency. Child maps are required to be
instances of the Map class in Data.ListTrie.Base.Map. Some operations
additionally require an OrdMap instance.