如果我能为Linux样操作系统(即Linux Redhat)获得GUI,我会很高兴。 如果我可以将GUI在窗户上工作,那将是很棒的,但是至少我的目标是Linux。
我认为
lablgtk工具包是合理的最新信息,并且目前维护。这将是一种选择。我自己没有使用过。 不难将一组OCAML模块链接到C,C ++或ObjectiveC的主要程序中。您可以或多或少直接直接呼叫OCAML功能并取回结果。为此,您需要学习外国功能界面,一旦进入凹槽,这并不难。然后,您可以使用C家族方面喜欢的任何GUI库。如果您对这种方法感兴趣,则可以从OCAML手册的第19章开始。
您可能会使用C中介链接其他语言,具体取决于语言。对于解释的语言,您可能可以将OCAML功能添加为新的原始功能。 (根据我的经验,口译员通常用C或C ++编写。)对于java,有
ocaml-java
(如您所言)。我没有自己使用过,但很有趣。我相信JVM有一些限制,因此您可能需要在编码中格外小心。jsocaml,将OCAML编译到JavaScript.
目前在我的雇主项目中,我使用c ++和ocaml和qt的OCAML,并将C零件添加到OCAML中以进行Interop。 OCAML部分由C ++称为过程,两者与QT的共享内存通信。它适用于我们的项目,但对于更频繁的数据交换,它不会有效。 也许是使用转侧的另一个解决方案:
https://github.com/bloomberg/bucklescript该项目将您的OCAML代码转换为JavaScript,因此您可以以这种方式在HTML5基本GUI框架上进行GUI。 该转言者的主要作者也曾担任OCAML编译器的核心贡献者一段时间。 React团队也给予了有关该项目的反馈。