“let () =” 是什么意思?奥卡梅尔 是什么意思?
有些代码类似于 let () = print_string "something" in fn 某些 OCaml 代码。 这意味着什么? “()”有什么特殊含义吗?或与以下含义相同 print_strin…
OCaml:查找特定类型的值
我有一些值的列表,我需要找出哪种值是第一个: type my_types = | MAlpha | MBeta of int list | MGamma of string * int let find_first where what…
错误:未绑定值 PolkaGrid.manager_alloc_loose
我仍在尝试通过 ocamlc -I /usr/local/lib/ocaml/3.11.2/apron -I /usr/local/lib/ocaml/3.11.2/gmp/ -c file 编译此文件.ml open Apron;; open Mpqf;…
使用外部库编译 ocaml 代码的不同方法
我已经安装了一些库,并正在尝试编译代码。 1) ocamlc -I /usr/lib -I /usr/local/lib/ocaml/3.11.2/apron -I /usr/local/lib/ocaml/3.11.2/gmp -c ml…
在 F# 中编写相互递归函数时出现问题
我正在翻译 Little Mler 的一个函数,该函数对该数据类型进行操作 type sexp = An_Atom of 'T | A_slist of slist and slist = Empty | Scons of sexp…
“打破” OCaml 中的折叠?
我有一个使用 List.fold_left2 来检查列表是否是回文的函数。 (折叠的使用不是可选的:这是一个家庭作业问题。) let is_p lst = List.fold_left2 (f…
如何使用自定义模块进行编译
我正在尝试用 2 个 .ml 编译一个项目,其中一个是遵循此格式的模块 module Mymodule = struct ... end;; 我还为 myModule 创建了一个 .mli module Mym…
在 OCaml 中混合模式匹配和柯里化
在 SML 中,使用柯里化和模式匹配来定义函数是常见且容易的。这是一个简单的例子: fun zip [] _ = [] | zip _ [] = [] | zip (x::xs) (y::ys) = (x,y…
Ocaml 未创建 .o 文件
我是 ocaml 和 ubuntu 的新手,我正在尝试按照本教程编译一个非常简单的 ocaml 文件: http:// /wiki.njh.eu/OCaml_and_SDL 问题是它没有编译我有以下…
OCaml:获取值的类型名称
可以在 OCaml 中打印值的名称,例如,如果我有 type my_type = | MyType_First of int | MyType_Second of string ,然后执行以下操作: let my_value…
使用fold_left/right反转OCaml中的列表
更新 - 解决方案 感谢 jacobm 的帮助,我想出了一个解决方案。 // Folding Recursion let reverse_list_3 theList = List.fold_left (fun element rec…
在 Ocaml 中定义 lambda 表达式的类型
作为实践,我尝试定义一个与由变量、抽象和应用程序组成的 lambda 演算表达式相对应的类型。我目前最好的尝试是: type expr = Var of string | Abs o…