Pharo只是重新包装/重塑吱吱声吗?

num*_*er5 16 smalltalk squeak pharo

我正在尝试学习一些Smalltalk.首先发现的是Squeak,但由于安全问题,它已经从Gentoo ebuild树中删除了,所以我决定找一个替代品.

然后我发现了Pharo通过Seaside项目,在我下载了Pharo 1.0软件包之后,里面竟然有一个SqueakVM!

所以,我的问题是:Pharo只是重新包装/重塑吱吱声吗?那些Squeak(捆绑不安全的库)的安全问题是否仍然适用于Pharo?

谢谢!

Ben*_*ack 15

Pharo最初是Squeak的一个分支,旨在实现"实用"的Smalltalk开发.这两个环境使用相同的虚拟机,相同的图像格式,并且几乎共享整个低级类库.它们使用相同的版本控制系统,并且(最后我检查过)也共享相同的fileIn/fileOut格式.

与此同时,我认为Pharo仅仅是品牌重塑是不公平的.这两个项目正朝着越来越不同的方向发展:虽然Squeak没有表现出想要取消其教育和研究方案的迹象,但Pharo勉强专注于创造一个适合企业和商业发展的小巧轻便的环境.在Squeak担心与其先前版本保持向后兼容性的地方,Pharo一直非常愿意以缩减内容的名义打破兼容性,加快速度,并且通常简化库系统.这两个系统现在具有不同的编译器,很快将具有不同的FFI(本机代码)接口,并且具有越来越多的不同窗口系统.

由于这些原因和其他原因,我认为Pharo在我看来是当前与Squeak兼容的Smalltalk,而不仅仅是对Squeak的"重新诠释".随着时间的推移,我希望情况能够越来越接近Emacs/XEmacs,在那里可以制作在两个系统下运行的程序,但是大多数人都会瞄准一个或另一个.

我完全不知道你提到的安全问题,所以我不知道情况是否比Pharo更好.如果您能够概述您的想法,那将会很有帮助.

  • 有趣.这些错误存在于VM中,因此它们将适用于Pharo,Squeak,Cog以及使用Squeak虚拟机的任何其他Smalltalk.与此同时,尽管有一些人抱怨Squeak开发人员不会修复它并且在你的链接bug中顽固不化,但我发现Squeak的bug追踪器中没有任何针对这三个漏洞的错误,并且没有提到邮件列表.让Squeak开发团队知道存在问题可能是值得的. (2认同)
  • 现在正在vm-dev列表中讨论如何解决该问题.David T Lewis现在也发布了一个错误报告:http://bugs.squeak.org/view.php?id = 7539 (2认同)

Jus*_*tin 5

我不是专家,但从我读过的内容来看,Squeak中有很多东西(教育等).Pharo是一个叉子,它试图移除许多额外的位并使其更具商业级别.

Pharo关于
一篇讨论此事的文章


Fra*_*rar 5

虽然完全同意本杰明的回答,但是没有什么可以阻止两把叉子在将来再次相同.

这两个项目都针对一个带有可加载包集群的小内核.主要的区别(至少从我所看到的,在关于squeak-dev的讨论中,是关于如何实现这一目标的哲学.

有些人建议将来Pharo和Squeak之间的主要区别是默认加载哪些包.