我正在使用cmdargs
从命令行程序中获取一些参数。我使用了一些特殊类型的在我的计划Haskell可键入的实例
data Function = Max
| Min
| Moy
| Med
deriving (Eq,Data,Typeable)
我可以直接在议论同"Max" "Min" "Moy" "Med"
由类Data
和Typeable
推导Function
数据类型传递这些类型。我的问题是我的程序变得越来越复杂,我需要重命名我的构造函数以避免名称冲突。
data Function = funMax
| funMin
| funMoy
| funMed
deriving (Eq,Data,Typeable)
但是,我想继续访问这些构造函数与"Max" "Min" "Moy" "Med"
。要做到这一点,我想我需要创建自己的Data
和Typeable
实例Function
,是吗?
我的问题是我没有设法创建这些实例,即使在阅读Hackage文档之后。
你有没有成功创建过Data
和Typeable
你自己的数据类型的实例?
我很困惑。你是否在使用'DataKinds'并推广这些构造函数? – dfeuer
我无法理解这个问题。你想给他们不同的名字,以避免名称冲突,但你想用旧名称访问它们。这看起来与我矛盾。你如何期待这将起作用? – chi