ocaml 相关问题

OCaml是一种严格的静态类型函数式编程语言,专注于表达性,正确性和效率。

在 Opam 的帮助下安装 Dune

我设法在 Windows 上的 MSYS2 上安装 Opam。 当我打开 MSYS2 MING64(蓝色的)外壳并输入 opam——版本 它告诉我它已安装。 当我跑步时 opam 安装不...

回答 1 投票 0

在Ocaml中编译多文件项目,导致Unbound Module错误

上下文 我目前正在尝试学习 OCaml 的基础知识(通过 2022 年代码挑战的到来)。我的目标是仅使用 OCaml 标准库并编写我自己的 make 来获得基本知识 -

回答 1 投票 0

获取“未绑定记录字段mid_x”

我不明白为什么在运行此代码时收到此错误:“未绑定记录字段 mid_x”。函数 midpoint_segment os 试图做的是找到给定的中点...

回答 1 投票 0

为什么 ocaml 中的这个递归示例不适用于负数?

在Think Ocaml一书中,作者给出了这个例子: 让记录倒计时 n = 如果 n <= 0 then ( print_string "Blastoff!"; print_newline()) else ( print_int n; print_newli...

回答 1 投票 0

OCaml 和 Opam:未绑定模块 Core

我正在尝试设置 OCaml 环境,并且我已按照 Real World OCaml beta 的附录 A 中的说明进行操作。我设置了 opam,并使用以下命令安装了 OCaml 版本 $ 奥帕姆

回答 3 投票 0

找出在模式匹配中使用 catch all 时这些类型不同的原因

我需要一些帮助来理解类型推断如何影响以下代码,该代码来自上一个问题(经过一番思考后,我将其简化为以下代码): 输入“结果...

回答 1 投票 0

子矩阵 Ocaml

让moja_matrika1 = [[1; 2]; [3; 4]];; 让 moja_matrika2 = [[4; 7; 8]; [3; 2; 1]];; 让rec does_it_contain (lis1, lis2) = if (List.hd lis1 = []) then false else if (List.hd lis1 = lis2) then true...

回答 2 投票 0

CPS中fold_left怎么写?

尽管它已经是尾递归的,但看到它的 CPS 版本仍然很有趣。 这是标准的左折叠: 让 rec myFoldLeft f acc 列表 = 匹配列表与 | [] -> ACC |哈:...

回答 1 投票 0

数组初始值设定项是语法糖吗?

我正在编写一些 ocaml 并意识到 [1;2;3] 是 1::2::3::[] 的语法糖。 同样,C 中的数组初始值设定项也是语法糖吗? int a[] = {1, 2, 3}; 编译器必须生成...

回答 1 投票 0

有没有办法“匹配”以某个值开头的字符串? [重复]

例如,考虑以下表达式: 将字符串与 | “Foo”^ 休息 -> 休息 | “酒吧”^休息->休息 | _ -> “无与伦比” 不幸的是,这是一个

回答 2 投票 0

如何正确处理异常

我是 OCaml 语言的新手。我编写了用于研究数字乘法的函数。但我在异常处理的情况下遇到了问题。问题在于 int_of_string 函数无法转换

回答 1 投票 0

Ocaml 类型错误(变体/模式匹配)

尝试做一个简单的模式匹配变体,这将为我提供二叉树节点字符串的有序连接,但在递归实现中出现错误: 输入 btnode = |叶子 ...

回答 1 投票 0

合并两个列表,同时删除重复项

目标是合并(追加)两个列表,同时删除重复项。 让rec find_dup a lst = 匹配 lst 与 | [] -> 假 | hd::tl -> if (hd == a) then true else find_dup a tl;...

回答 2 投票 0

基数导致元组解构出现问题

当将 Base 添加到以下代码中时,为什么 OCaml 编译器期望 h 和 w 为整数? tup 应该是一个元组 - 有语法问题吗?到底是什么 Base 导致了这个 e...

回答 2 投票 0

OCaml - 基本导致元组解构问题

当将 Base 添加到以下代码中时,为什么 OCaml 编译器期望 h 和 w 为整数? tup 应该是一个元组 - 有语法问题吗?到底是什么 Base 导致了这个 e...

回答 2 投票 0

为什么会发生这种情况(Ocaml)

在 Ocaml 语言中,目标是组合(追加)两个列表,同时删除重复项。 让rec find_dup a lst = 匹配 lst 与 | [] -> 假 | hd::tl -> if (hd == a) then true e...

回答 1 投票 0

使用 OCaml Async 进行并发写入

我正在从网络读取数据,我想在收到数据时将其写入文件。写入是并发且非顺序的(想想 P2P 文件共享)。在 C 中,我会得到一个文件描述符......

回答 1 投票 0

如何使用Janestreet Core定义自定义异常打印机?

默认情况下,失败异常打印如下: # print_endline(Printexc.to_string(失败“呃 哦”));; 失败(“呃 哦”) 为了提高可读性,我们想打印 Failure 的参数...

回答 1 投票 0

OCaml 标准地图与 Jane Street Core.std 地图

所以我在程序中使用 Jane Street 的 Core.std 来处理某些事情,但仍然想使用标准的 OCaml Map。但是,当我调用像 mem 这样的函数时,它需要 Core.std 的签名

回答 2 投票 0

找不到 .ocamlinit 文件

我正在尝试为 Real World OCaml 书设置 OCaml 环境。 我需要 OCaml、OPAM、Utop 和 Core 库。我已经能够安装 OCaml、OPAM 和 Utop,但我在设置时遇到问题...

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.