我想为我的数据提取构造函数的值,它是产品类型data X = Xa A | Xb B | Xcd C D | Xefg E F G....的总和,其中A、B、C…是data A = A {a :: xyz, b :: abc..}类型的,我想要一个函数,它接受X类型的值,然后给我"Xa","Xb“..基于类型。我知道我可以用例,但是有
我正在解决99个Haskell问题。我成功地解决了第21号问题,当我打开时,提出了以下解决方案:
insertAt x xs (n+1) = let (ys,zs) = split xs n in ys++x:zs
我发现模式(n + 1)很有趣,因为它似乎是一种优雅的方法,可以将insertAt的基于1的参数转换为基于0的split参数(这是以前练习中的
我对类型定义的Haskell语法选择感到有点困惑,如也就是说,这里的等号真的意味着某种微妙意义上的平等,还是仅仅是一个随机符号的选择?例如,在等式实际上是相等的:如果有这一行,foo a b和bar b a可以或多或少地在程序中交替使用。每当我继续尝试学习Haskell时,我都会对IMO的这种违反直觉的语法感到有