gpt4 book ai didi

function - 如何在 Haskell 中定义中缀函数?

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

我想将一个函数定义为中缀,这样用户就不必手动用反引号包围该函数来调用它。具体来说,我正在编写一个类似 DSL 的函数,它接受一个 Rank 和 Suit 并构造一个扑克牌记录:

-- pseudocode
data PokerCard = PokerCard { rank :: Rank, suit :: Suit } deriving (Eq)

of :: Rank -> Suit -> PokerCard
r of s = PokerCard { rank = r, suit = s }

pokerDeck = [
Ace of Spades,
Two of Spades,
...
]

我相信 of保留为 case ... of 的语法表达式,所以我必须将它重命名为 of' , .of , +of , 等等。

最佳答案

无法使用字母数字名称作为中缀来定义函数。 Haskell 的语法规则只允许具有符号名称的函数或用反引号包围的函数名称用作中缀 - 没有办法改变它。

关于function - 如何在 Haskell 中定义中缀函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15347092/

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