问题标签 [utop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
installation - OCaml:安装后无法运行 utop
我正在尝试通过 Real World OCaml 书来学习 OCaml。他们有一个指南,我应该通过它来安装 Core 包和 utop。然而,虽然我似乎使用 Opam 成功安装了这两个,但当我尝试使用它们时它们都不起作用。
我知道它们已安装,因为当我尝试再次安装它们时,我收到以下消息:
但是,当我尝试输入“utop”启动 utop 时,它不起作用。
当我尝试打开核心时也是如此:
这里发生了什么?我是编程新手,所以可能有一些关于安装的东西我只是不理解。
ocaml - 将输入历史从 utop 保存到文件
在 OCaml 顶层 utop 中,是否可以在会话期间将用户输入历史记录保存到文件中?
ocaml - “错误:应用于此参数的函数具有类型...”使用命名参数时
我目前正在研究“Real Word OCaml”,带有命名/标记参数的基本示例之一似乎不起作用(使用 utop 4.01.0):
产生:
然而:
产生预期的输出[5; 4; 1]
。
在核心语言中,与大多数语言一样,参数是匿名的。
这是否意味着我必须包含某种外部库才能使此代码正常工作?
编辑
这是我的~/.ocamlinit
文件(根据本书的安装说明):
ocaml - OCaml 递归打印到顶层
我在 OCaml 中编写了一些代码,它们执行类似于以下的操作
此代码在顶层完美运行,但似乎时间正在打印到缓冲区而不是立即打印到屏幕上。当我给顶层另一个命令时,缓冲区中的所有时间都会立即打印到屏幕上。
如何更正此问题,以便每次print_time()
调用时将时间打印到顶层,而不是在我给顶层命令时打印?
示例:如果我运行程序,然后等待 2 分钟,然后在顶层输入内容,我会得到以下输出。如果我没有在顶层输入任何内容,那么我只会收到第一次消息。
此外,这个“循环”main()
在本机编译代码中只工作一次(不会递归调用自身),我不知道如何纠正它。
macos - (wrong-type-argument arrayp nil) 启动 emacs
Emacs 24 和 Mac OSX Mavericks,我的 emacs 文件如下:
解决此错误的任何帮助都会很棒。谢谢!
Nots:我确实有 tuareg 模式,我说的是(in~/.elisp/tuareg)。执行以下操作后,我开始收到此错误:
不知道出了什么问题,但在安装这些之前我有基本相同的 emacs 文件并且没有问题。现在在 emacs 中,当我尝试评估 ocaml 文件时,utop 也无法正常运行。
ocaml - “未绑定类型构造函数_no_unused_value_warning”(仅当#use ing 文件时)
考虑这个非常基本的模块定义:
当我在 utop 提示符下直接输入时,一切正常:
但是,当我尝试#use
使用包含完全相同定义的文件时,Unbound type constructor _no_unused_value_warning_
出现错误:
(第 2 行是type config with sexp
)
版本信息:The universal toplevel for OCaml, version 1.7, compiled for OCaml version 4.01.0
更新:
我开始赏金,因为我真的很感兴趣
- 知道这是否是 OCaml 错误
- 我的代码的合理解决方法/修复
functional-programming - OCaml:带条件的简单函数不起作用
我是 OCaml 的新手,我只是在学习它。我正在尝试执行一个简单的函数来计算(a+b)^2
或(a-b)^2
基于a
和b
我正在尝试具有如下功能
返回警告
所以我尝试了下面的一个:
这也警告了一些事情。因此,我继续检查该函数是否至少可以工作,但它返回错误的结果 -
我不确定我做错了什么,任何帮助将不胜感激
ocaml - _no_unused_value_warning_ `with sexp` 在 utop
我在 utop 中添加了等require "sexplib.syntax";;
。core
如果我输入
在 utop 中,它说
模块类型 Printer = sig type t val t_of_sexp : Sexp.t -> t val sexp_of_t : t -> Sexp.t end
好的,这没问题。
但是如果我将上面的代码保存到一个ml
文件中并在 utop 中使用它,它会给出错误:
错误:未绑定类型构造函数_no_unused_value_warning_
为什么?这是utop中的错误吗?我该如何举报?
ocaml - 错误:尝试从命令行使用 utop 打开核心模块时未绑定模块核心
opam
我正在尝试通过设置,utop
和 Core 模块来跟随 Real World OCaml 。我已经按照这些指示取得了一些成功。特别是,当我在utop
没有指定要加载的文件的情况下运行时,我可以毫无问题地加载 Core:
到目前为止,一切都很好。现在,如果我尝试使用相同的代码从命令行加载脚本:
我认为这是我在某处犯的配置错误,但我不太确定在哪里。
设置详细信息
我试图重新安装ocaml
, opam
, utop
,core
但无济于事。我知道opam init
在设置过程中进行了以下配置更改:
〜/ .ocamlinit:
~/.bash_profile
我正在运行 Arch Linux,并按照opam
我不知道的问题通过 AUR 进行安装。我还能够根据安装说明构建和安装所有软件包,而没有任何我知道的错误。
ocaml - utop 中的模式匹配更严格?
比如有一个函数,测试一个列表是否单调递增,源码和测试用例是:
编译并运行代码:
但是,当我想在 utop 中使用此功能时,它显示: