gpt4 book ai didi

haskell 类型

转载 作者:行者123 更新时间:2023-12-02 06:26:14 24 4
gpt4 key购买 nike

如何在 Haskell 中查找值的类型?

我想要这样的东西:

data Vegetable = 
Und Under
|Abv Above

is_vegetable ::a->Bool
is_vegetable a = if (a is of type Vegetable) then True else False
<小时/>

更新:

我想要一个数据结构来对上述树进行建模。

我还想要一些函数(is_drink、is_vegetable、is_wine、is_above),以便我可以在列表上应用一些过滤器。 enter image description here

最佳答案

你不知道。您依靠类型系统来确保该值是 Vegetable --- 如果该值不是 Vegetable,您的程序将无法编译,更不用说运行了。

is_vegetable :: Vegetable -> Bool
is_vegetable _ = True -- so there is not much point to this function

看到您的评论后进行编辑:

data Foodstuff = Vegetable Vegetable
| Drink Drink

is_vegetable :: Foodstuff -> Bool
is_vegetable (Vegetable _) = True
is_vegetable _ = False

但这可能仍然不是您想要的。相反,您可能想要类似的东西

    case myFood of
Vegetable vegetable -> -- something involving `vegetable`
Drink drink -> -- something involving `drink`

关于 haskell 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8879041/

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