OCaml是一种严格的静态类型函数式编程语言,专注于表达性,正确性和效率。
List.fold_left实现与List.fold_right实现
我是OCaml的新手,我从其他帖子中看到,List中的fold_left是尾递归的,并且在较大的列表上效果更好,而fold_right不是尾递归的。我的问题是为什么fold_left ......
我必须编写函数系列:int - > int - >结果列表列表,所以第一个int表示游戏数量,第二个int表示获得的点数。我已经考虑过一个经验解决方案......
有没有一种简单的方法将元组列表转换为具有单个元素的列表,反之亦然?
考虑以下列表:[1; 2; 3; 4; 5; 6; 7; 8; 9]是否有内置函数或类似函数将此列表更改为:[(1,2,3,4,5 ,6,7,8,9)]还有其他功能,我可以用来改变它...
我想知道列表中有多少“你”。函数调用的一个例子是countu([“u”;“a”;“x”],0);; :-int = 1我的代码是让rec countu = fun(x,y) - > if ...
我试图在OCaml中使用纯函数式编程创建一个非上下文解析器。该函数将采用字符串列表,如果它遵循格式(a ^ x b ^ y c ^ z d ^ k),则返回true,这意味着......
这是我的类型定义:type('type1,'type2)symbol = | N'的'type1 | 'type2的T这里有一些类型:type mysub = | Abc | Bcd | Def我也有一个列表[N Abc; N Bcd; T“(”]。我想要的......
我正在尝试构建一个递归数据结构,但我遇到了一些问题。我正在实现一个类型系统,我正在尝试实现递归类型。所以,我想要实际......
我有3个ocaml模块,最后一个树进行实际计算并使用另一个中定义的函数。该程序的基本思想是将端口作为初始状态,...
使用List.fold_left返回值时为什么会出现类型错误?
我试图在类型为pExp(用户定义类型)的列表上使用List.fold_left返回的列表。这样做的目的是创建一个Times(pExp列表)列表,列表与Plus l类型匹配....
如何将一个字符列表(代表一个单词)划分为CAML中所有可能的(前缀,单个字母,后缀)三元组?
我将类型“单词”定义为字符列表。我正在尝试编写一个递归函数“divide_word”,它将一个“单词”作为参数,并返回所有可能的三元组列表(前缀,...
如何在OCAML中编写一个函数,它返回一个列表,其中第二个列表插入到第一个列表中
如何编写一个函数,它接受两个列表和一个整数(例如:int n)作为输入,然后返回一个列表,其中第二个列表插入到第一个列表中,到第n个位置(.. 。
如何制作一个功能。在Ocaml中,它接受两个布尔值和一个char(操作),然后返回一个相应的逻辑值
如何在Ocaml中编写一个函数,它将接受两个布尔值(例如a和b,表示逻辑值0和1)和一个字符,它将决定操作...
我正在使用Debian Stable并从Debian存储库安装了ocaml和opam。我正在尝试从这里开始代码:#directory“+ labltk”#load“labltk.cma”let()= let top = Tk ....
使用Toploop / TopLevel的ocamlbuild
我正在寻找实现这个答案的eval函数:https://stackoverflow.com/a/33293116/但是,当我去编译我的代码示例时:让eval代码=让as_buf = Lexing ....
将ref设置为绑定线程链中Lwt_io.read_line的结果
我正在创建一个聊天服务器,我有一个处理登录的功能。存在称为nick的预设ref和预设输入流imp。我的代码如下:let handle_login nr(inp,outp)= ...
我正在考虑像身份函数这样的函数:val f:'a - >'a let fx = x组合函数:val compose:('b - >'c) - >('a - >'b) - >('a - >'c)让我们撰写fgx ...
我有以下代码(它是一个测试,所以它没有任何有趣的东西)让测试k =让rec aux =函数| 0 - > 0 | z当z = 2 - >提高退出| _ - > aux(k-1)in ...
输入'a queue = Q of {estack:'a list; dstack:'列表} | Empty let enqueue d q = match q with |空 - > Q {estack = [d]; dstack = []} | _ - > Q {q with estack = q.estack :: d} ...
我想使用队列在OCaml中创建一个广度优先的二叉树搜索,但我无法让它工作。当节点没有任何“邻居”时,似乎函数卡住了。让rec ...