是否可以在 OCaml 解释器中使用箭头键?

2024-03-22

每次我在解释器中使用这些键时,我都会不断出现如下符号:

[[D^[[C

我在 ZSH 中使用 Linux Mint 12,但是在 Ubuntu 中使用 bash 得到了相同的结果。 另外,ssh 中也是同样的情况。


库存 OCaml 顶层没有内置行编辑功能。我使用rlwrap:

$ cat bin/ocaml
#!/bin/sh
exec rlwrap /usr/local/bin/ocaml "$@"

在我看来,在没有这样的东西的情况下使用顶层是相当痛苦的!

其他可能性是在 emacs 下运行顶层(我认为这是一个流行的选择),或者使用utop https://forge.ocamlcore.org/projects/utop/。我没用过utop,但听起来很酷。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以在 OCaml 解释器中使用箭头键? 的相关文章

  • 用 Haskell 解释 Parigot 的 lambda-mu 演算

    我们可以用 Haskell 来解释 lambda 演算 data Expr Var String Lam String Expr App Expr Expr data Value a V a F Value a gt Value a int
  • 使用第一类模块时,类型构造函数“...”将转义其范围

    给定一个简单的工厂 module type Factory sig type t val create unit gt t end module FactoryImpl Factory struct type t string let cr
  • zeppelin hive 解释器抛出 ClassNotFoundException

    我已经部署了zeppelin 0 6并在Jdbc解释器下配置了hive 尝试执行 hive show databases Throws org apache hive jdbc HiveDriver 类 java lang ClassNot
  • OCaml 是否复制了自定义块?

    想象一下 我有一个名为 libcat 的 C 库 用于与我的毛茸茸的猫进行交互 因此 我正在为 OCaml 编写绑定来简化与 fluffy 的交互 module type CAT sig type cat val find gt cat v
  • 数据中的是什么?

    我使用OCaml版本4 02 3 我定义了一个类型self type self Self of self type self Self of self 及其实例s let rec s Self s val s self Self
  • JIT代码生成技术

    虚拟机如何动态生成本机机器代码并执行它 假设您可以弄清楚想要发出的本机机器操作码是什么 那么如何实际运行它呢 它是否像将助记符指令映射到二进制代码 将其填充到 char 指针中并将其转换为函数并执行一样hacky 或者您会生成一个临时共享库
  • 使用 OCaml Graphics 实际更改文本大小

    我想知道如何在 OCaml 中设置文本大小 我试过Graphics set text size我想这应该可以达成交易 但无论我把set text size 200 or set text size 20并没有改变什么 Graphics se
  • 如何使用List.fold_left?

    我仍在尝试了解如何fold left完全有效 它是否像这样迭代列表List iter 或者我的代码还有其他问题吗 我认为 e 是列表中的元素 所以它是一个元组 并且fst e获取元组的第一个元素并且snd e获取元组中的第二个元素 let
  • 具有可变参数数量的 OCaml 函数

    我正在探索 OCaml 函数的 高级 用法 我想知道如何编写具有可变数量参数的函数 例如 像这样的函数 let sum x1 x2 x3 xn x1 x2 x3 xn 通过一些类型黑客 当然 let sum f f 0 let arg x
  • OCaml 中 let rec 的限制

    这几天我在学习OCaml 发现了这个 OCaml 对于可以放在 let 记录右侧的内容有限制 像这个 let memo rec f norec let rec f memoize fun x gt f norec f x in f Erro
  • OCaml:用消息断言

    又是另一个问题 P 我不太确定是否应该将其发布在这里或 OCaml 邮件列表上 但我首先尝试这样做 我喜欢断言语句 然而 我发现如果没有附加消息 错误消息几乎毫无用处 第 XXX 行的断言冲突 很好 但实际上出了什么问题 我认为断言的一个很
  • 如何缩进现有 OCaml 代码

    我有大约 30 000 行缩进严重的 OCaml 代码 包括 mly 和 mll 文件 并且想要缩进它们 我尝试在谷歌上搜索 ocaml indent 的变体 我能得到的最接近的结果是使用 Omlet vim 并一次缩进一行代码 在插入模式
  • 使用只有一个元组值的变体类型构造函数

    type foo Foo of int int let t 1 2 Foo t Error The constructor Foo expects 2 argument s but is applied here to 1 argument
  • OCaml:如何运行包含库的脚本

    我正在按照 Real World OCaml 一书来学习 OCaml 许多程序都需要使用 Jane Street Core 库 当我在顶层使用这个核心库中的函数时 它工作得很好 在那里 我只需使用以下命令来打开 Core 库 use top
  • 如何使用 opam 安装特定版本的 ocaml 编译器

    如何使用 opam 或其他包管理器 安装特定版本的 ocaml 编译器 和兼容包 我快速浏览了 opam 文档 但没有找到相关信息 我需要 ocaml 编译器 最好是本机代码编译器 来构建 unison 一个文件同步软件 我需要使用相同版本
  • 如何在 Javascript 函数中处理箭头键和 <(大于)?哪个事件和哪个代码(charCode 与 keyCode)?

    我该如何处理箭头键和
  • 如何在 OCaml 中使协变可观察

    我正在尝试为值制作一个包装器 允许调用者自行注册以获取有关它的通知 这是一些 工作 代码 module Thing sig type a t val make a gt a t val watch a gt unit gt a t gt u
  • 有人可以解释一下这个 OCaml 程序中使用的类型语法吗?

    以下类型取自这个问题 https stackoverflow com q 50586942 633183 contains an error later fixed by the OP type task Success a gt a ta
  • 在 OCaml 自定义顶层设置提示

    在 OCaml 自定义顶层中 有没有一种方法可以通过编程方式设置提示 到别的东西 我希望能够更改它以响应用户的最后一个自定义功能 有点像bash你如何设置PS1 我什至找不到 directive 来更改它 谢谢 在 toplevel top
  • 需要.Net 的公式解释器[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • Glassfish 3.1.2 的 JDBCRealm 有一个新的密码加密算法字段。它是做什么用的?

    Glassfish JDBC 领域具有多个可以设置的不同属性 我感兴趣的是摘要算法 and 密码加密算法属性 这就是它们在管理控制台中显示的方式 据我所知 第二个是从 Glassfish 3 1 2 开始的新版本 I have 查阅了Gla
  • Cordova 文件插件 readAsDataURL 不返回文件数据

    我尝试使用 Cordova 文件插件的 readAsDataURL 函数来获取视频文件的 base64 版本 但没有成功 我的代码如下所示 recordVideo return new Promise resolve gt let opti
  • List<> .ForEach 未找到[重复]

    这个问题在这里已经有答案了 我正在将 Windows Phone 应用程序移植到 Win 8 我发现了这个绊脚石 但找不到解决方案 我有一个 List
  • 使用javascript点击重复表单

    addDetails const divCreate document createElement div divCreate appendChild document createTextNode Some text divCreate
  • Spring 4 + WebSocket + SockJS + STOMP 方法不允许

    我最近开发了一个使用 Spring 4 Websockets STOMP SockJS 的系统 我已成功创建连接并发送 接收消息 但在某些情况下 随机地 我无法确定原因 我收到 方法不允许 错误 并且未创建连接且无法发送 接收消息 我最初的
  • 使用 boost::bind 将成员函数绑定到 boost::bisect?

    我遇到了问题this https stackoverflow com questions 8245909 how to use boost bisection以前但现在它在某种程度上起作用了 现在我有以下问题 在使用相同的函数调用 boos
  • 如何在 EF Code First 中映射表拆分?

    如何使用 EF Code First 映射表拆分 例如 描述了 EDMX 的表拆分here http thedatafarm com blog data access ef table splitting ndash the opposit
  • ElasticSearch 随机得分与 boost 相结合?

    我正在使用 Firebase 构建 iOS 应用程序 并使用 ElasticSearch 作为搜索引擎来获取更高级的查询 我正在尝试实现一个可以根据查询从索引中获取随机记录的系统 我已经使用带有种子的 random score 函数完成了这
  • 合并关联数组

    假设我有两个关联数组 有没有办法使用连接运算符之类的东西来合并它们 我尝试了这个 但它不起作用 module tb initial begin int a int 1 1 2 2 int b int 3 3 4 4 display a a
  • Spark Listener EventLoggingListener 抛出异常 / ConcurrentModificationException

    在我们的应用程序 Spark 2 0 1 中 这个异常经常出现 我找不到任何关于此的信息 可能是什么原因 16 10 27 11 18 24 ERROR LiveListenerBus Listener EventLoggingListen
  • Struts2中读取上传文件的内容

    如何读取上传文件的内容execute 的方法Action班级 我可以将文件上传到服务器上 但不知道如何读取该文件的内容 我们必须先将其保存在服务器上吗 或者我们可以直接读取吗 选项 1 创建 servlet 我建议你使用 apache co
  • Primefaces tabView 在选项卡更改时执行表单验证

    我有一个严重的问题p tabView成分 我已经设定dynamic true and cache false 到选项卡视图 其中一个选项卡具有一些已设置的输入组件required true 现在 当我每次更改选项卡时 都会进行表单验证 并且
  • C 中获取变量的最大值

    C 中是否有一个函数可以返回这样的变量的最大值 我将在下面的示例中将函数命名为 maxvalue int a printf d maxvalue a 32767 unsigned int b printf d maxvalue b 6553
  • 具有多个接口的 Python UDP 套接字

    我正在 Windows XP 机器上用 python2 7 编写脚本 本机使用不同的网卡连接到多个网络 我遇到了一个问题 我已将 UDP 套接字绑定到特定接口 我知道您可以通过仅提供网卡现有的 IP 地址来在 Windows 中完成此操作
  • bitbake 配方中的 do_compile[noexec] 和空函数有什么区别?

    如果我想禁用特定的构建步骤 我可以使用以下任一方法 do configure noexec 1 OR do configure 这些替代方案有什么区别 我听说使用时可以有提高条件noexec 嗯 通常有 3 种方法可以删除任务 deltas
  • 在 GitHub 上创建一个存储库的子目录,并将其作为我自己的存储库的一部分

    抱歉 我对 Git 和 GitHub 很陌生 我已经阅读了一些内容 但我不确定我想要做的是否是entirely可能的 基本上我想分叉 XBMC 上使用的 Confluence Skin 并修改此处的各种元素 https github com
  • 在sql server 2008 R2中使用PIVOT时获取空数据

    我将以下查询与 PIVOT 一起使用 SELECT FROM SELECT MEMBER PROPERTY as MEMBER PROPERTY MEMBER VALUE as MEMBER VALUE MEMBER ID as MEMBE
  • PYTHON 中的希腊语编码

    我正在尝试存储一个字符串 并在 python 中使用 nltk 对它进行标记后 但我无法理解为什么在对它进行标记后 它创建一个列表 我看不到列表中的字符串 有人可以帮我吗 这是代码 a b nltk word tokenize a b xc
  • 从数组中查找唯一的值组合,过滤掉任何重复的对

    使用 php 我希望找到一组指定长度的唯一组合 同时确保多个组合中不存在两个相同的值 例如 如果我想使用此数组查找 3 个值的所有唯一组合 如果 3 个值不可能 则回退到 2 个值的组合 array array array 1 2 arra
  • 是否可以在 OCaml 解释器中使用箭头键?

    每次我在解释器中使用这些键时 我都会不断出现如下符号 D C 我在 ZSH 中使用 Linux Mint 12 但是在 Ubuntu 中使用 bash 得到了相同的结果 另外 ssh 中也是同样的情况 库存 OCaml 顶层没有内置行编辑功