为什么没有用Common Lisp编写的Common Lisp实现?

anq*_*egi 7 smalltalk common-lisp

最近,我开始学习cuis-smalltalk,并且我没有意识到使用Smalltalk的深度和深度OOP与CLOS(我使用Ruby)相比.我了解到Smalltalk本身就是一个反射系统的好主意.我发现Ruby有Rubinius,但是当我找到用Lisp编写的Common Lisp实现时,我找不到类似的东西.似乎没有用CL编写的CL分发.

在使用CLOS和slime的Common Lisp中,您可以完成与Smalltalk Development环境相关的所有操作.

但我有一个问题,如果Common Lisp实现本身对Common Lisp有用吗?或者不会添加任何特殊的语言,因为homoiconicity,宏和MOP可以处理所有.是否存在无法完成的技术限制?

Rai*_*wig 13

示例:SBCL

大多数运行时的大部分都是用C实现的.

示例:Clozure Common Lisp

内核是用汇编语言编写和C.

示例:Mezzano

Mezzano是一个完全用自己的Common Lisp编写的操作系统.它运行在金属上 - >意味着可以作为操作系统启动它.

Smalltalks都不是完全用Smalltalk编写的,Rubinius也不是用Ruby编写的

这与像Squeak或Pharo这样的Smalltalk实现没有什么不同,其中大多数部分是用Smalltalk编写的,虚拟机的某些部分是从Smalltalk到C生成的,而虚拟机的某些部分是用C语言编写的.

Rubinius的部分内容是用C++编写的.

  • Bee Smalltalk完全用Smalltalk编写. (3认同)

jme*_*ris 5

你的假设是不正确的,SICL是用common lisp编写的common lisp实现: https: //github.com/robert-strandh/SICL