Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我对 Haskell 很陌生,我试图在创建记录类型时使用函数声明中的类型变量(不太确定在 Haskell 中如何调用它)。 与往常一样,代码更好地解释了我的问题:
data S a = S {x::a} f :: a -> S a f n = (S a){x=n}
GHC 说 a 不在最后一行的范围内。这怎么可能实现?
使用f n = S {x=n},类型变量是不必要的
f n = S {x=n}
如果您确实需要声明中的类型变量,请使用作用域类型变量扩展。