是否可以执行以下操作:
foo = bar
where
type A = (Some, Huge, Type, Sig)
meh :: A -> (A, A) -> A
我只需要在 where 子句中使用此自定义类型,因此全局定义它没有意义。
最佳答案
这是不可能的。为什么不直接在函数上面定义它呢?您不必从模块中导出它(只需使用显式导出列表)。
顺便说一句,如果您确实有这么大的类型,这可能表明您应该将其分解为更小的部分,特别是如果您有很多元组,如您的示例所示;数据类型会更合适。
关于haskell - 范围类型声明可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8821916/