gpt4 book ai didi

haskell - 在 Haskell 中使用不绑定(bind)到完整列表的 as-patterns

转载 作者:行者123 更新时间:2023-12-04 17:11:58 24 4
gpt4 key购买 nike

好吧,也许标题有点困惑,但我想做的是有一个这样的功能:f (a:b:c:d:is) = ...但可以引用a:b:c:d不用再写了。事实证明,我不能做 e@(a:b:c:d):is 之类的事情。并得到预期的结果。有任何想法吗?

最佳答案

我能想到的最好的方法是使用 view patterns , 像这样:

{-# LANGUAGE ViewPatterns #-}
f (splitAt 4 -> (as@[a,b,c,d], is)) = is ++ [d,c,b,a] ++ as

关于haskell - 在 Haskell 中使用不绑定(bind)到完整列表的 as-patterns,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8711731/

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