.Net有任何Common Lisp实现吗?
.Net有任何Common Lisp实现吗?
解决方案
如果可以采取其他方法,则可以通过Edi Weitz的RDNZL从喜爱的Lisp中访问.Net。
不,但是我们可能要考虑在DLR上运行IronScheme。
从网站:
IronScheme的目标是成为基于Microsoft DLR的符合R6RS的Scheme实施。
IronScheme将完全重写IronLisp,并结合在开发IronLisp时汲取的经验教训。
我最近没有看过它,但是至少在过去,在CLR上完全实现通用Lisp时存在一些问题,如果情况有所改变,我会有些惊讶。问题出在诸如处理浮点数之类的问题上,.net / clr有办法做到这一点:a)有点不正确b)与常见lisp的ANSI标准不一致,但是c)不允许采取任何措施。还有其他类似的问题。这些东西很奇怪,也许不太重要,但是这意味着我们不太可能在CLR上看到ANSI CL。
存在更大的问题,例如,普通的lisp具有更强大的对象系统,因此我们不能在运行时将其以1:1的比例映射到对象(对于一个对象而言,没有MI)。没关系,但是给我们提供了一种内部/外部的方法,这是普通运行时试图避免的方法...
我们是否会看到一个常见的轻率变体是一个不同的故事,但是我目前不知道任何事情(不是我看上去很努力)
我们可以尝试一下(免责声明,我自己尚未测试过)。另请阅读。这就是链接的来源。
L夏普.NET
从2010年的2008年重新考虑这个问题,我们现在可能要考虑CLR上的Clojure。它不是Common Lisp,但是如果我们来自该方向,那将很容易学习。与CLR进行互操作非常容易,它每天需要吸引更多用户,并解决了诸如并发之类的其他重要问题。可能值得花一些时间在其中。更多CLR特定的Clojure信息在这里。
.NET的完整通用lisp http://code.google.com/p/uabcl/