1
我想我有一个Haskell类型推断的问题。Haskell类型推断与阅读
我做了我自己的数据类型,并将其作为类Read
的实例。我的数据类型实际上是以其他类型作为参数,它是一个类型参数。
我重新定义了readPresc
,它解析字符串并返回我的新数据。当我写:
read "string that represent MyType a" :: MyType a
它工作完全正常(至少它做什么,我预期)
现在我有一个功能,我们称之为insert
,这需要a
型,MyType a
的元素,给出一个新的MyTape a
。
insert :: a -> MyType a -> a
但是当我写:
insert 3 "string that rapresent MyType Int"
我Ambigous type
。
如何告诉haskell推断read
与插入参数相同的类型?
你的意思是'插入3(读取“字符串表示”)? – icktoofay
另外,你能澄清一点吗? 'read“bla blah blah”:: MyType'建议'MyType'是一个类型,但是'insert :: a - > MyType a - > a'暗示'MyType'是一个类型构造函数。 – AndrewC