tying-the-knot

    16热度

    1回答

    我在说我猜测是Data.Map错误的东西绊倒了,但也很可能在我的Haskell知识的错误。希望有人能澄清这是:) 请参考this gist。我将一个循环链表结构序列化为一个字节流。对于任何给定节点,该形式为: data Node = Node { val :: Word8 , next :: Node } 我希望它被序列化为一对字节:表示val第一字节,并且表示在

    5热度

    2回答

    我试图通过绑结结构来形成像数据结构这样的无限网格。 这是我的方法: import Control.Lens data Grid a = Grid {_val :: a, _left :: Grid a, _right :: Grid a, _down :: Grid a, _up :: Grid a} makeLens

    3热度

    4回答

    在我最初的尝试是创造我创建了一个Point数据类型与parent指针不相交集数据结构到另一个Point: data Point a = Point { _value :: a , _parent :: Point a , _rank :: Int } 要创建一个单集,一个Point创建具有自身作为其父(我相信这就是所谓绑结): makeSet' :: a

    5热度

    3回答

    捆扎-的结策略可以用于构造图等,使用简单的一柄图为例: data Node = Node Node Node -- a - b -- | | -- c - d square = a where a = Node b c b = Node a d c = Node a d d = Node b c 这种策略是相当完美的,但我无法找到一种方法实际使

    2热度

    3回答

    更新:我已经添加了an answer,它描述了我的最终解决方案(提示:单个的Expr数据类型是不够的)。 我writing一点点表达式语言的评估,但是我卡上的LetRec结构。 这是语言: type Var = String type Binds = [(Var, Expr)] data Expr = Var Var | Lam Var Expr | App