首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在let* _ =时,let*有更好的语法吗?

在let* _ =时,let*有更好的语法吗?
EN

Stack Overflow用户
提问于 2020-06-03 20:59:28
回答 1查看 148关注 0票数 0

除了看上去丑陋和难以解释给非OCaml程序员之外,有没有其他的选择?

代码语言:javascript
复制
let* _ = do_something in

当然还有>>= fun() ->,它看起来不太好。

也许吧

代码语言:javascript
复制
let (;*) = >>= fun () ->
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-04 00:32:24

首先,最好是写,

代码语言:javascript
复制
let* () = do_something in
...

以使返回类型显式为unit

不提供返回新的unit语法中的绑定算子的一元操作,但是存在各种ppx扩展,例如提供do标记的一元

最后,您可以使用由一元库提供的排序操作符,例如,在Monad中有序列,因此您可以编写

代码语言:javascript
复制
sequence [
 do_one_thing;
 do_another_thing;
 and_so_on;
]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62182623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档