我非常喜欢在大学学习机器学习。我发现函数式编程通常是编写某些算法的一种令人耳目一新的优雅方式。我听说过 F# 并尝试过它。尽管如此,我还是用 ML 编写了一些有趣的函数,并希望将它们集成为可以在其他应用程序中使用的库。

通常我将函数粘贴到 SMLnj 解释器中。有什么办法可以将它们编译下来吗?

有帮助吗?

解决方案

您将不得不使用类似的东西 MLJ编译器. 。它编译为Java字节代码。或者您可以使用 sml.net 编译器以编译为.NET IL。

其他提示

这很常见 ML 使双方导出到C,然后互相调用C函数。几乎所有内容都有一个FFI库“轻松”导出到C。

http://www.smlnj.org/doc/smlnj-c/index.html

因此,对于外界,您的SML库的行为将像C库一样,除了带有隔离的segfaults和内存泄漏*

*不保证

项目普及语言。使用ML进行一个有趣且无可否认的“酷”项目进行地面工作,人们会涌向该语言。例如,与Ejabberd和Mochiweb一起看Erlang - 这两个很酷的项目都为Erlang等一次性钻石语言创造了奇迹(即,BTW,我最近选择的开发语言)。我很乐意看到有人用ML做一些rad,这种语言是一种有趣的思考。

几个标准ML编译器. 。 Mlton Wiki还包含 基准.

我使用了将标准ML编译到字节码中的莫斯科ML。它不是快速,但可以起作用。就效率而言,MLTON通常被认为是最好的标准ML编译器。

请注意,Poly/ML 版本 5 或更高版本支持传统的“堆转储”模型和 C 风格的独立可执行文件。有关的文档 Poly/ML 网站 分布在许多不同的地点,其中一些标题中的日期非常古老——但该系统仍然活跃且活跃。

目标代码生成在传入中进行了解释 发行说明 对于 5.0 版本(我们目前是 5.5):看 PolyML.export 那里。

还有一些Poly/ML C接口,最近已经被翻新用于一些GUI项目。您应该在 Polyml 邮件列表中询问。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top