小编smo*_*kaj的帖子

Java中的GUI,SML中的Backend?

我是函数式编程语言(即标准ML及其方言)的忠实粉丝,主要是因为它们的表现力允许非常简洁,干净的代码.使用ML比使用Java可以更快地解决许多问题.

但是,Java在编程GUI( - > SWT)时非常棒.我绝对不想用功能语言来做这件事.

这就引出了我的实际问题:是否有一种很好的方法可以在ML中编写程序然后用Java编写的GUI包装它?

到目前为止我想出的是以下内容:

  • 编译ML程序(例如使用MLton或Poly ML)并从Java执行二进制文件作为外部程序(http://www.rgagnon.com/javadetails/java-0014.html).
    问题:前端/后端可以通信的唯一方法是通过字符串.这可能需要大量(困难)编码/解码.
  • 使用JNI/JNA.根据我的阅读,这将允许您传输整数,数组等.我认为外部程序必须用C/C++编写才能实现.使用MLton的 外部函数接口,我可以用C语言编写一个接口到我的函数程序,并静态链接整个事物.
    问题:显然,这只适用于动态库,即Windows中的dll.但是,MLton只允许我将ML/C程序编译为可执行文件.在尝试创建一个DLL时,我遇到了一大堆错误.

有任何人对此有经验吗?有一个更好的方法吗?
提前致谢!-Steffen

编辑:我知道Scala试图将函数式编程的概念引入Java.我试过了,但我认为它不能与实际的函数式编程语言竞争(在表达方面)

java java-native-interface sml jna

6
推荐指数
1
解决办法
491
查看次数

标签 统计

java ×1

java-native-interface ×1

jna ×1

sml ×1