2012-05-01 115 views
4

我将基于OCaml的若干模块转换为F#,并从OCaml格式模块运行到OCaml打印格式化函数open_box and close_box。在阅读了印刷盒的概念之后,它很有道理,但似乎需要在幕后实施很多工作。将OCaml转换为F#:将OCaml open_box和close_box转换为F#

是否有F#模块,在功能上等同?

如果没有,而无需转换格式ocaml的模块的部分,什么是快速和简单的替换功能?

编辑

Jack具有FSharpx.Compatibility.OCaml.Format.Format.fs 一个版本的OCaml格式的一部分,我还没有”测试,但它是最compelete版本我目前所发现的。

+2

您是否尝试过在F#编译它?可以直接编译而不用修改。 –

+0

@OnorioCatenacci格式模块需要其他模块和转换才能使用F#。我花了大约15分钟,但它变成了一连串我不想追逐的错误,因为我不知道存在多少错误。 –

+2

@OnorioCatenacci现在很少编译而没有修改,'Format'模块需要进行数百次更改。索引数组使用'xs。(i)'在OCaml中,'Xs。[i]'在F#中使用类型注释。原始代码使用OCaml的流,在F#中没有相应的流。渠道相当于文字阅读器和作家,但需要一些调整。即使'printf'工作方式不同! –

回答

4

是否有F#模块,在功能上等同?

如果没有,而无需转换格式ocaml的模块的部分,什么是快速和简单的替换功能?

没有超出printf。但是,我不得不将OCaml的Format模块最近翻译成F#并且只花了几个小时。

相关问题