我是一名Ruby程序员,刚开始尝试接触Smalltalk并试图选择一个实现来进行实验。看起来Squeak或Pharo都是不错的选择,但我很难找到当前信息来帮助决定哪个更好。通过谷歌搜索找到的大部分信息都是几年前的,可能已经不再相关。
现在是否有明显的首选?如果没有,每个选项的优缺点是什么?
有几个有趣的可能的起点:
请更详细地解释您想要实现的目标,我们可以更好地帮助您。
可能有一个明显的首选项,但你必须自己去开发。
Pharo和Squeak有很多共同点。但由于Pharo是从Squeak分叉而来,这也意味着它们彼此分歧。
如果你从学习Smalltalk的角度来看,两者是相等的。如果你从支持技术的角度来看,情况可能会有所不同。大多数开发人员要么是Squeaker,要么是Pharoer。而开发人员创建库和支持技术框架。如果一个库的开发人员是Pharoer,我预计该库在Pharo中的维护将比在Squeak中要好(反之亦然)。
你应该看看两个版本,并尝试你想要实现的东西。在大多数情况下,体验是相同的。只要它不再相同,你可能已经知道自己的首选项了。
虽然Newspeak不严格属于Smalltalk实现,但我们不应该忽视它。尽管还没有成为生产环境,但如果你一直在Alan Kay和Nicolas Wirth之间犹豫不决,Newspeak就像是Smalltalk和Modula2的结合。
还有Instantiations的VisualAge(VAST)和最近的Smalltalk/X,它们都共享类似的界面,而这种界面与Pharo或Squeak大不相同。
我在研究、个人项目和某些概念验证方面使用Pharo。
我的公司软件包是用VAST/VASmalltalk/VisualAge(任选其一)制作的。
还有,请记住GNUSmalltalk。