标准ML的GUI界面?

10

我最近出于好奇开始学习标准ML语言。我所知道的是,它有一个高效的编译器(MLton),可以让我们自由地使用抽象,而不必担心性能问题。

如果我也能用标准ML进行一些GUI编程,那就太完美了。是否有类似于Gtk、Qt或WxWidgets的标准ML绑定库呢?

非常感谢。


3
如果你想更好地使用ML变体(除了学术界外),OCaml可能更适合你。如果你愿意更大胆地远离SML,Haskell也有出色的GUI工具包。 - ephemient
哦,谢谢。我已经学过Haskell了,虽然GUI方面不是很熟悉。我对SML很好奇,以防需要与C相媲美的性能,哈哈。 - Phil
3个回答

7

这里有一篇论文描述了mGTK项目,它是一个将Standard ML绑定到GTK的工具。还有几个OpenGL接口,尽管它更注重于2D和3D图形而不是GUI工具包。eXene是一个X Windows工具包。sml_tk是一个Tk接口。


1
谢谢。我也做了一些谷歌搜索,发现了mGTK和SML-Gtk项目,但看起来它们已经很久没有更新了:( - Phil

3

有为外部工具包提供的绑定,但eXene 工具包是专为 SML 设计的,可以利用 Concurrent ML 的特性。我多年前使用过它,发现它非常适合该语言并且使用起来非常愉快。但它没有更广泛使用的工具包中那么多的组件库。


0

长颈鹿图书馆提供了支持GObject Introspection的库的SML绑定,其中包括GTK。截至撰写本文时,可用于GTK 3堆栈的绑定已经可用。尽管cairo图形库不支持GObject Introspection,但是长颈鹿图书馆提供了一些cairo函数的绑定。

尽管SML有非常精确的定义,但该定义不包括FFI,并且编译器之间存在相当大的差异。截至撰写本文时,长颈鹿图书馆仅支持MLtonPoly/ML的FFI。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接