ocaml

    3热度

    1回答

    比方说,我有以下abstractProductA类的公共方法称为methodA: class abstractProductA = { pub methodA => "name"; }; 我想创建一个界面,上面写着功能methodA应该总是返回string 。类似的东西 interface abstractProductA { abstractProductA(): st

    2热度

    1回答

    我想几个标志(S,内嵌20,nodynlink)添加到我的_oasis文件,但我得到一个编译错误: AlphaFeatures: ocamlbuild_more_args XOCamlbuildExtraArgs: "-cflags '-S -inline 20'" 我想知道如何添加这些。 在相当长的错误: node:dir user$ make ocaml setup.ml -build

    0热度

    2回答

    与OCaml的船舶好像Unix和Bigarray某些模块在ocamlopt -where自己.cmx和.cmxa文件(这是~/.opam/4.03.0/lib/ocaml我的系统上我目前OPAM开关)。 有没有一种方法可以确定没有编译哪个源文件依赖于标准分布中的哪些“特殊”库?我打算稍后在Makefile中使用此输出。 下面的程序example.ml open Unix;; Unix.syst

    1热度

    4回答

    我是绝对的OCaml初学者。我想创建一个重复20次字符的函数。 这是功能,但由于错误而无法使用。 let string20 s = let n = 20 in s^string20 s (n - 1);; string20 "u";; 我想这样 # string20 "u" - : string = "uuuuuuuuuuuuuuuuuuuu"

    0热度

    1回答

    我试图使这个递归函数它接受一个int x和一个列表,然后去除第一x量从列表中要素的: let rec nthcdr int_t list_t = match int_t with | 0 -> list_t | _ -> (match list_t with | [] -> [] | h::tail -> nthcdr (int_t -1)

    3热度

    1回答

    为什么说数组和字符串索引使用稍有不同的语法? 例如 let _: int = [|1;2;3|].(0) let _: char = "123".[0] 我(和其他人)发现这是既奇怪又混乱。

    0热度

    1回答

    有没有可能使用ppx扩展或类似方法将功能更新语法{ record with key = value }与嵌套记录一起使用的方法? 例如,在下面的示例程序中,我在功能上只更新最外层的记录,当我真的想要定位一个“内层”记录时。 type outer = { a : float; b : inner } and inner = { c : float; } let

    0热度

    2回答

    因此,我试图对这个整数列表进行排序,以便所有的偶数都在前面,而赔率都在后面。现在我的程序已经在大部分情况下起作用了,但它不断颠倒我不希望它做的赔率数字的顺序。例如。考虑到输入[1; 2; 3; 4; 5; 6],我想得到[2; 4; 6; 1; 3; 5],但我得到[2; 4; 6; 5; 3 ; 1]任何帮助非常感谢! let rec evens (xl:int list) (odd:int l

    3热度

    1回答

    试图与OCaml的开发上Arch Linux的4.12.10,我一直运行到该错误消息: ### stderr ### # error: executing gringo failed (No such file or directory) # error: gringo returned with non-zero exit status [ERROR] External solver f

    0热度

    2回答

    是否有可能在没有创建“必须实现的新模块”的情况下在mli中模块化。 这个例子很有意思,但是,假设我有以下源文件int_wrapper.ml。 type t = Int64.t let zero = Int64.of_string "0" 我想为它定义一个接口文件,但Int64.t很长,所以我想缩写它。 module I = Int64 val zero : int -> I.t 当