问题描述 投票:0回答:1
。 有人知道这是否有效且有用吗? (我认为我已经对此库抓到负面评论)
如果我选择以更优化的语言编程GUI,那么软件交互是:以合适的语言编写GUI(也许是C ++,Python等),然后将OCAML书面解释器编译为可执行文件,然后以某种方式将GUI连接到可执行文件中? 通过管道,我对某些松散的连接或奇怪的解决方案不感兴趣(我一直在考虑为这些方面的处理间通信,例如操作系统设计所关注的内容)或插座(我倾向于将这些视为网络编程),我想必须在其他语言的gui代码中“放置我的ocaml编码”,即 有任何想法,指导或建议吗?

如果我能为Linux样操作系统(即Linux Redhat)获得GUI,我会很高兴。 如果我可以将GUI在窗户上工作,那将是很棒的,但是至少我的目标是Linux。

我认为

lablgtk工具包是合理的最新信息,并且目前维护。这将是一种选择。我自己没有使用过。 不难将一组OCAML模块链接到C,C ++或ObjectiveC的主要程序中。您可以或多或少直接直接呼叫OCAML功能并取回结果。为此,您需要学习外国功能界面,一旦进入凹槽,这并不难。然后,您可以使用C家族方面喜欢的任何GUI库。如果您对这种方法感兴趣,则可以从OCAML手册的第19章开始。

您可能会使用C中介链接其他语言,具体取决于语言。对于解释的语言,您可能可以将OCAML功能添加为新的原始功能。 (根据我的经验,口译员通常用C或C ++编写。)

对于java,有

ocaml-java

(如您所言)。我没有自己使用过,但很有趣。我相信JVM有一些限制,因此您可能需要在编码中格外小心。
user-interface interface ocaml user-interaction
1个回答
10
投票

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团队也给予了有关该项目的反馈。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.