吱吱作响或Pharo开始Smalltalker?
我是一个刚刚开始涉足Smalltalk的Rubyist,正试图select一个实现来进行实验。 看起来Squeak或Pharo会是一个不错的select,但是我很难find最新的信息来帮助确定哪个更好。 我通过谷歌searchfind的很多东西都是在几年前,可能不再相关。
这几天有没有明显的喜好? 如果不是,每个人的利弊是什么?
在一定程度上,这是个人品味的问题。 Pharo是Squeak的叉子,意图使它成为更现代的Smalltalk版本,有时牺牲不向后兼容Squeak。
Pharo作为一个分支,也意味着他们有很多共同之处,从虚拟机到大部分的类库。 许多软件包都可以和这两个软件一起工作,有些是用Squeak作为主开发平台开发的,我猜想Pharo(Seaside,Pier等)开发的软件的数量稍多一些。 这两个变种都有免费的介绍书籍:吱吱作响,Pharo by Example,但Pharo似乎更新。
我个人更喜欢Pharo,因为它给了我更清洁和更现代的感觉。
有许多有趣的可能的出发点:
- 海边一键点击做网页开发;
- MOOSE一键进行软件再造,创build模型浏览器和可视化;
- Pharo一键点击按照Pharo-by-example书(比吱吱声更新)更清洁的图书馆;
- Cuis为清理graphics模型(Morphic);
- 如果您对教育方面感兴趣,可以点击一下鼠标。
- 叽叽喳喳,一个点击一个有趣的工具和玩具丰富的环境。
更多地解释你想达到的目标,我们可以帮助你更好
学习Smalltalk的另一个select是Cuis 。
从描述:
Cuis不同于其他的Squeak变体,因为它对系统复杂性采取积极的态度:随着系统变老,它们通常变得更加复杂。 新的function被添加为下面的任何层之上的层,有时没有真正理解它,并且几乎总是没有修改它。 避免这种情况的唯一方法就是理解整个系统,并且始终对整个系统进行重新devise。 保持简单和一致。
代码在Github上。 最近的图像文件在这里 。
崔斯约有600class。 这对一个人来说是非常可行的。 稍后,您可能想切换到Squeak,Pharo或另一个Smalltalk,因为绝大多数类和方法是兼容的。
可能有一个明确的喜爱,但你必须为自己开发。
Pharo和吱吱声有很大的相同之处。 但是,由于pharo是吱吱声的叉子,它也意味着它们彼此分离。
如果从学习的angular度来看,那么两者是平等的。 如果从支持技术的angular度来看,情况可能会有所不同。 大多数开发者都是吱吱作响者或者 pharoers。 开发人员创build库和技术支持框架。 如果一个图书馆的开发者是一个pharoer,我会期望这个图书馆能够更好地维护pharo的function(反之亦然)。
你应该看看两者,并尝试你想达到的东西。 在大多数情况下,经验将是相同的。 只要它不再是相同的,你可能已经知道你最喜欢的。
现在最引人注目的是Pharo ,所以我会去那里。 亚军是Visual Works 。 只要小心,Smalltalk方言现在没有很大的牵引力。
我的推理如下。 今天,Smalltalk被用于2件事:Web编程和研究。 对于这两者来说,Pharo占了上风(Seaside使用Pharo作为默认平台,而里尔大学抓住了所有以Pharo为基础的Smalltalk文件)。
Smalltalk用于的第三件事,虽然越来越less,正在开发银行软件。 在那里,大众仍然很受欢迎。 此外,大众有最好的对象检查员。
我正在做一系列关于如何从一开始就使用Squeak的教程,所以很自然地我偏向于Squeak。 当然,我不害怕使用不同的叉子来炫耀特定的软件包。 例如,我用一键式的docker形象来介绍海边和docker,那基本上就是法罗。
Instantiations还有VisualAge(VAST),最近的一个版本是Smalltalk / X,两者共享一个类似的界面,而这个界面与Pharo或Squeak有很大不同。 我使用Pharo来进行我的研究,宠物项目和一些概念certificate。 我的公司软件包是在你喜欢的VAST / VASmalltalk / VisualAge中完成的。 另外,请记住,GNUSmalltalk。
尽pipe不是严格的Smalltalk实现,但不应该忽视Newspeak。 还不是一个生产环境,但是如果Alan Kay和Nicolas Wirth之间的语言专家Newspeak就像Smalltalk和Modula2相结合的话。