ocaml - Ocaml 语法很奇怪
问题描述
我在 Ocaml 中有这个程序,它从键盘读取一行并返回一个 int :
let get_int () =
print_string "Insert a number\n" ;
let input = read_line() in
let return__ = int_of_string( input )
;;
print_string "I'll print what you write : ";
print_int ( get_int() );
print_string "\n"
问题是第 5 行的语法错误," ;;
" 编译器说。
我知道已经存在这样做的功能,但我这样做是为了学习。
我阅读了官方的 Ocaml 文档,但我仍然没有得到语法。有人可以向我解释一下吗?
解决方案
您的get_int
-binding 必须以表达式结尾。您可以在那里摆脱最后一个let
-binding 并直接返回 int :
let get_int () =
print_string "Insert a number\n";
let input = read_line () in
int_of_string input;;
推荐阅读
- python - 同时运行异步任务
- java - 带有 Spring Boot 2.3 的 Jpos Q2 服务器
- r - 按组和列之间查找最小值
- solr - Solr zookeeper 状态问题(null:java.io.UncheckedIOException: java.net.SocketException: Connection reset)
- amazon-web-services - health-check-grace-period-seconds 覆盖默认值还是仅将值应用于命令?
- matlab - 将 Matlab 函数转换为 Simulink 函数时出现问题
- reactjs - Next.js - 如何在 url 中显示帖子名称而不是 id 并使其唯一?
- javascript - 试图延迟 js 脚本的执行,但更改未显示在屏幕上
- javascript - 如何使用 Javascript/jQuery 提交() type="search" 的输入?
- c - Arduino计时器工作异常