gpt4 book ai didi

class - Haskell构造一个类型包含类

转载 作者:行者123 更新时间:2023-12-01 08:12:42 25 4
gpt4 key购买 nike

我想构造一个 haskell 类型:

    type SinglePP = (String,GLattice)

GLattice 定义为:

    class GLattice l where
join :: l->l->l
....

我有办法做到这一点吗?

最佳答案

type SinglePP a = (String, a)

然后当您在函数中使用 SinglePP 时,将 a 限制为 GLattice

someFunc :: GLattice a => SinglePP a -> ()
someFunc a = doMagic a

如果您愿意,可以使用更多类型的 system-foo 并使用存在类型,这样可以避免每个函数后的样板代码,但作为交换,您必须使用语言扩展和 data带有显式构造函数的声明。这意味着当您想在 a 处进行更多的模式匹配,但在类型声明中键入更少。

但是大多数类型是可以推断的。

关于class - Haskell构造一个类型包含类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16556251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com