小编Ben*_*373的帖子

Prolog nth1匿名变量

我有一个带有整数和匿名变量的List,我试图找到一个特殊值的索引.问题是我用它nth1/3来找到索引Prolog为匿名变量分配值,因此我也找到了索引.

例如: List = [1,\_,1],我想要的结果是X = 1, X = 3nth1(X,List,1),而是说之前,我X = 1, X = 2, X = 3.

prolog prolog-toplevel

8
推荐指数
1
解决办法
235
查看次数

Haskell数据类型范围

我定义了自己的数据类型.

data Row = A | B | C deriving (Show,Eq,Ord)
Run Code Online (Sandbox Code Playgroud)

问题是,如果有更优雅的方式来定义我的范围而不是这个?

instance Ix Row where
  range (A,A) = [A]
  range (A,B) = [A,B]
  range (A,C) = [A,B,C]
  range (B,B) = [B]
  range (B,C) = [B,C]
  range (C,C) = [C]
  range _     = []
Run Code Online (Sandbox Code Playgroud)

haskell types

4
推荐指数
2
解决办法
214
查看次数

Haskell foldl Monad绑定

我有一个功能

move :: Move -> Node -> Maybe Node
Run Code Online (Sandbox Code Playgroud)

在哪里我可以使用我的绑定monad来获得一个Maybe Node

(return n >>= move m) 
Run Code Online (Sandbox Code Playgroud)

其中n :: Node和m :: Move,但我现在如何折叠Moves([Move])列表?

我尝试用foldl做但没有成功.

haskell fold state-monad

1
推荐指数
1
解决办法
222
查看次数

标签 统计

haskell ×2

fold ×1

prolog ×1

prolog-toplevel ×1

state-monad ×1

types ×1