値のタイプがキーのタイプに依存するような方法でData.Mapを使用する方法はありますか?私は地図に間違った型付きの値を挿入することがないようにする必要があります。例えばHaskell Mapキーのタイプによって値のタイプが決定される
: その後、地図
Map (KeyType a) (ValType a)
に似たタイプを持つ必要があります。しかしa
がバインドされていないため、これは明らかに動作しないのは、私がタイプKeyType a
とValType a
があるとしましょう。
KeyType
と
ValType
で同じである必要がありますように、あなたは
a
をバインドするために型シノニムを使用することができます
ボールトのように聞こえるhttps://www.stackage.org/package/vault –
['dependent-map'](https://hackage.haskell.org/package/dependent-map)も参考にしてください –