如何解决了解 Ocaml 中的类型
当你在 ocaml 中输入时,有没有办法知道它在 Ocaml 中是什么类型的。
例如,在 python 中,如果你输入:"type(3)" 你得到 int。 另一个例子,如果你输入: type("hello") 你得到字符串。
ocaml 中的等价物是什么?
解决方法
编译的 OCaml 代码中不存在类型信息。因此,您无法调用任何函数来获取值的类型。
注意 OCaml 中给定值的类型是固定的,即它不能改变。所以在代码运行时没有真正需要测试类型。编译时的类型是值的永久类型。
OCaml REPL(通常称为“顶级”)确实有类型信息。如果你在提示符下输入一个值,它会告诉你类型:
# 3;;
- : int = 3
# "hello";;
- : string = "hello"
#
如果您在文件“mycode.ml”中有代码,您可以将其加载到 REPL 中,解释器将打印所有顶级名称的类型:
# #use "mycode.ml";;
val f : int -> int = <fun>
这些是非常简单的解决方案。您还可以使用 IDE 进行设置,该 IDE 会在您编辑代码时显示光标下的任何类型。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。