gpt4 book ai didi

haskell - Clojure 替代 Haskell 的 ADT 和模式匹配?

转载 作者:行者123 更新时间:2023-12-02 07:00:51 25 4
gpt4 key购买 nike

每当在 Haskell 中我们需要一些变体数据类型时,我们都会使用 ADTs与模式匹配相结合。 Clojure 人们在此类用例中使用什么?

最佳答案

嗯,实际上有一些为 Clojure 编写的模式匹配库。 Clojure 的宏使这种事情成为可能。 Matchure是最新的之一。甚至还有一些关于 ADTs in contrib 的东西.

不管这些东西,我们在核心 Clojure 中与 Haskell 的 ADT 最接近的是 Clojure 1.2 中的新记录和数据类型。但是,除非您需要使用记录或数据类型带来的好处,否则通常只使用映射。 Clojure 是一种动态语言,因此如果您使用记录等,您将不会获得静态类型检查。

Clojure 具有“解构”功能,这让人想起模式匹配,并且在惯用的 Clojure 中大量使用。请参阅thisthis 。前者是您真正在这里的答案。 ;p

关于haskell - Clojure 替代 Haskell 的 ADT 和模式匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3541794/

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