【发布时间】:2023-03-31 21:15:01
【问题描述】:
我是一个刚开始涉足 Smalltalk 的 Rubyist,我正在尝试选择一个实现来进行试验。 Squeak 或 Pharo 似乎是一个不错的选择,但我无法找到当前信息来帮助决定哪个更好。我通过 Google 搜索找到的大部分内容都是几年前的,可能不再相关。
这些天有明确的最爱吗?如果不是,各有什么优缺点?
【问题讨论】:
我是一个刚开始涉足 Smalltalk 的 Rubyist,我正在尝试选择一个实现来进行试验。 Squeak 或 Pharo 似乎是一个不错的选择,但我无法找到当前信息来帮助决定哪个更好。我通过 Google 搜索找到的大部分内容都是几年前的,可能不再相关。
这些天有明确的最爱吗?如果不是,各有什么优缺点?
【问题讨论】:
在某种程度上,这是个人品味的问题。 Pharo 是 Squeak 的分支,旨在使其成为更现代的 Smalltalk 版本,有时以不坚持向后兼容 Squeak 为代价。
Pharo 是一个分支,也意味着它们有很多共同点,从 VM 到类库的大部分。许多附加软件包都可以与它们一起使用,有些是使用 Squeak 作为主要开发平台开发的,我猜其中有一些是在 Pharo(Seaside、Pier 等)中开发的。两种变体都有免费的介绍书籍:Squeak by Example 和 Pharo by Example,但 Pharo 似乎更新。
我个人更喜欢 Pharo,因为它让我感觉更干净、更现代。
【讨论】:
【讨论】:
有许多有趣的可能起点:
详细说明您想要实现的目标,我们可以更好地帮助您
【讨论】:
Pharo 现在最受关注,所以我会去那里。亚军是Visual Works。请注意,目前没有任何 Smalltalk 方言具有很大的吸引力。
我的推理如下。今天,Smalltalk 用于两件事:Web 编程和研究。对于两者来说,Pharo 都占了上风(Seaside 使用 Pharo 作为其默认平台,而里尔大学的 Smalltalk 论文数量最多——全部基于 Pharo)。
Smalltalk 的第三个用途是开发银行软件,尽管这种用途正在减少。在那里,大众汽车仍然很受欢迎。此外,大众拥有最好的对象检查器。
【讨论】:
可能有一个明显的最爱,但你必须自己开发它。
Pharo 和吱吱声有很大的共同点。但由于 pharo 是 squeak 的一个分支,这也意味着它们彼此不同。
如果从学习 smalltalk 的角度来看,两者是相等的。如果从支持技术的角度来看,情况可能会有所不同。大多数开发人员要么是尖叫者 要么 pharoers。开发人员创建库和技术支持框架。如果图书馆的开发人员是 pharoer,我希望图书馆在 pharo 中比在 squeak 中更好地维护(反之亦然)。
您可能应该看看两者并尝试您想要实现的目标。在大多数情况下,体验将是相同的。一旦它不再是相同的,你可能已经知道你最喜欢的了。
【讨论】:
我正在做一系列关于如何使用Squeak from very the start 的教程,所以我自然偏向于 Squeak。当然,我不害怕使用不同的 fork 来最容易地展示特定的包。比如我用一键Pier图片介绍Seaside和Pier,基本就是Pharo。
【讨论】:
虽然不是严格意义上的 Smalltalk 实现,但不应忽视 Newspeak。还不是生产环境,但如果您在 Alan Kay 和 Nicolas Wirth 之间纠结,因为语言专家 Newspeak 就像 Smalltalk 和 Modula2 的结合。
【讨论】:
还有由 Instantiations 提供的 VisualAge (VAST) 和最近的版本是 Smalltalk/X,两者共享相似的界面,而这又与 Pharo 或 Squeak 大不相同。 我将 Pharo 用于我的研究、宠物项目和一些概念证明的东西。 我的企业软件包是在 VAST/VASmalltalk/VisualAge 中完成的,无论您喜欢哪个名称。 另外,请记住,GNUSmalltalk。
【讨论】: