如何在Windows系统中获取一个通用的Lisp GUI界面?

17
我正在使用Emacs,搭配CLISP和Slime,并希望能够在屏幕上绘制图片。我特别考虑绘制图形,但任何可以让我绘制基本形状并对其进行操作的工具都可以让我入门。
8个回答

10

Doug是正确的,CAPI能够很好地工作。其他你可以尝试的东西:

cltk:http://www.cliki.net/Lisp-Tk

我知道Allegro也有一些针对Windows编程的东西,但我从未尝试过。

可能还可以尝试cells-gtk:http://common-lisp.net/project/cells-gtk/

再次说明,我只能告诉你它的存在,但无法确定它有多糟糕或是否真正可行…

我也无法评论http://www.cliki.net/GTK%20binding的质量。

但这大概就是可用的内容了。

Corman Lisp可能也有一些针对Windows编程的东西。

总之,在Windows上的选择相对较少。你可能最有信心的是CAPI,它被用于LispWorks在Windows、Linux、MacOS X和一些大型UNIX系统的IDE中...

问候


7
我认为我已经找到了自己的答案。Clojure似乎拥有我正在寻找的一切,因为我现在可以在LISP中原生地使用所有Java GUI项。它是与我之前使用的Common-Lisp不同的LISP方言,但似乎有很多社区支持,并且可以通过SLIME或Inferior-Lisp解释器与我安装在Windows上的Emacs集成。到目前为止,我印象非常深刻。
哦,这是一个代码示例:
(. javax.swing.JOptionPane (showMessageDialog nil "Hello World"))

你猜这是做什么的? :)

Bill Clementson的博客有很多关于Clojure的内容,包括安装它的许多有用文章。请参见此处:他关于Clojure的文章


4

据我所知,GUI工具包仅在LispWorks Professional和Enterprise版本中提供。它在个人版中不可用。 - aks

3
我知道这是一篇旧帖子,但是对于像我这样在寻找相同内容的人来说,这里的信息非常有用。
这个用于在Common Lisp中绑定tk的库似乎工作得相当不错。 http://www.peter-herth.de/ltk/

3

如果您想绘制自己的基本形状,可以使用Lispbuilder-SDL或其中一种cl-cairo FFIs(后者可能与MS Windows兼容)。


1

Clojure是一种优秀的Lisp语言,而Swing则是一个稳定的(尽管不是特别视觉上令人兴奋的)窗口工具包。如果您想要进行更高级的图形处理和/或涉足游戏编程,您可能需要查看Slick,这是一个通用的图形/游戏库,它位于Swing之上,并为您提供了访问OpenGL和许多其他内容的功能。

我发现Clojure/Slick组合是进行探索性图形编程的绝佳方式,因为您可以直接从REPL与图形窗口交互。


1

cl-cairo2 - 与Cairo矢量绘图库绑定。它可用于在各种表面上绘制各种图片。还有一个cl-2d库,它使用cl-cairo2来绘制图表。

还有cl-gtk2 - 与Gtk+库绑定。您可以创建使用cl-cairo2(或cl-2d)绘制所需内容的小部件。


0

对于他们的图形应用程序,CLISP用户可能会发现以下内容有用:

cl-vectors是一个纯Common Lisp库,用于创建、转换和渲染抗锯齿矢量路径。它可以使用ASDF-Install进行安装。 http://projects.tuxee.net/cl-vectors/

Vecto是一个简化的接口,用于强大的CL-VECTORS矢量光栅化库...结果可以保存为PNG...由于Vecto和所有支持库完全是用Common Lisp编写的,而不依赖于外部非Lisp库,因此它应该在任何Common Lisp环境中工作。Vecto在类似BSD的许可下提供。当前版本是1.4.3,于2009年8月26日发布。 http://www.xach.com/lisp/vecto/


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