gpt4 book ai didi

ocaml - 是否可以在ocaml中重现python的字符串插值?

转载 作者:行者123 更新时间:2023-12-04 02:13:47 24 4
gpt4 key购买 nike

在 python 中,可以使用类似 printf 的“%”运算符进行格式化:

"i am %d years old" % 99

或者
"%s is %d years old" % ("bob", 101)

对于任意数量的参数,有没有办法在 Ocaml 中获得相同的简洁语法?

对于单个参数,以下工作:
let (%) = Printf.sprintf in ... "i am %d years old" % 99

有没有一种方法适用于任意数量的参数?

最佳答案

从理论上讲,使用格式来生成类型 (typ1 * typ2 * ... * typn) -> string 似乎并不困难。比typ1 -> typ2 -> ... -> typn -> string .也就是说,也许,除了递归格式 %( fmt %) .真的有人用这些吗?

但在实践中,OCaml 的实现者选择了后一种形式,并为该形式而不是前一种形式实现了类型系统技巧。所以我担心答案是如果没有修补编译器,你就会被 curried 卡住了。格式字符串替换的形式。

关于ocaml - 是否可以在ocaml中重现python的字符串插值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2213542/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com