gpt4 book ai didi

haskell - 这种抽象数据类型叫什么?

转载 作者:行者123 更新时间:2023-12-02 18:53:19 25 4
gpt4 key购买 nike

我正在编写 Haskell,但这可以应用于任何具有 ADT 概念的 OO 或函数式语言。我将在 Haskell 中给出模板,忽略算术运算符已被采用的事实:

class Thing a where
(+) :: a -> a -> a
(-) :: a -> a -> a
x - y = x + negate y
(*) :: (RealFrac b) => a -> b -> a
negate :: a -> a
negate x = x * (-1)

基本上,这些都是可以加减,也可以乘以实小数值的东西。一个例子可能是一个简单的数字列表:加法和减法是成对的(在 Haskell 中,“(+) = zipWith (+)”),乘以实数会将列表中的每个项目乘以相同的数量。我遇到过足够多的其他示例,想要将其定义为一个类,但我不知道到底该如何调用它。

在 Haskell 中,只要有某种零值,它通常是一个幺半群。

这是代数类型动物园中某种已知的对象吗?我查看了环、半环、近半环、群等,但没有找到它。

最佳答案

这是一个向量空间:http://en.wikipedia.org/wiki/Vector_space 。您有加法和标量乘法。

关于haskell - 这种抽象数据类型叫什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3961818/

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