使用 Arbitrary 类型类生成随机二叉搜索树
我正在研究一个问题集,我必须为二叉搜索树编写任意实例。这是我到目前为止编写的代码: data Tree e = E | N (Tree e) e (Tree e) insert :: (Ord e)…
将字符串转换为由每次运行中的字符及其重复次数组成的对列表
所以我需要将字符串列表转换为 [(Char,Int)]。例如, ["xxxxx","yyy"] 到 [('x',5), ('y',3)] 。我能够毫无问题地获取 ('x',5) 部分,但我不确定如何…
Doaitse Swierstra 的“Typing 动态类型”的最短实现在 OCaml 中
(我希望这个问题不是“基于意见”) 来自 Doaitse 的动态类型输入 Haskell 中的 Swierstra 大约有 200 行代码。在 OCaml 中做同样的事情似乎需要更多…
根据函数的类型确定函数的行为
Haskell 新手,如果这是非常基本的,那么很抱歉 这个示例取自“真实世界 Haskell” - ghci> :type fst fst :: (a, b) -> a 它们显示了 fst 函数的类型…
xmonad-contrib 提示:在特定工作区中执行终端提示?
我最近决定通过 Stack 从源代码构建 XMonad 来进行自定义配置。首先我要说的是我对 Haskell 没有太多的经验。 我的操作系统是 Linux - Arch。 设置 我…
Haskell 如何“脱糖”? getline 在这个 do 块中?
我读过几本关于 Haskell 的书,但还没有编写太多代码,而且我对 Haskell 在某种情况下所做的事情有点困惑。假设我正在使用 getLine,以便用户可以按某…
尝试安装 cabal 时 ghcup 安装失败
当尝试从官方页面使用curl安装ghcup时,会抛出以下错误。 curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh 乌班图: Debug…
如何从 STDIN 读取 1 个字节?
如何从 STDIN 读取一个字节? 我尝试 在 Hoogle 上搜索 IO Word8 但有没什么用处。 我能找到的最接近的是 System.IO .getChar,但它读取的是 Char 而…
augdentity Haskell 实现
注意:我不允许使用任何内置函数 给定正整数 r 和 c 表示行数和列数,创建一个 2D 列表,表示具有该维度的“增广单位矩阵”:它是 kxk 单位矩阵(其中…
如何在 Haskell 中有效地字节交换二进制数据
下面的 byteswap 可以满足我的要求,但我担心它对于较大的二进制数据块来说效率低下。有没有高效的库函数或者我可以使用的东西? {-# LANGUAGE Overlo…
如何更改“sr”安装 Facebook / Duckling 时的目录?
我正在使用 Facebook / Duckling 设置 Facebook / Duckling /facebook/duckling#quickstart" rel="nofollow noreferrer">快速入门: stack build stac…
如何编写 Monad 将计算链接在一起
我正在编写我的第一个 monad 实例,所以如果我遗漏了一些明显的东西,请原谅。 我想做这样的事情: readStuffFromDatabase >>= function1 >>= ... >>=…
避免 WebSocket 库的多线程问题
WebSockets 库包含一个开放的 有关从多个线程发送消息的问题。 作为示例,我查看了 websocket-shootout,并注意到 接收数据。 void $ fork $ silentLo…