标签: pharo

Squeak或Pharo开始Smalltalker?

我是一个刚刚开始涉足Smalltalk的Rubyist,我正试图选择一个实现来试验.看起来Squeak或Pharo似乎是一个不错的选择,但我很难找到当前的信息来帮助决定哪一个更好.我通过谷歌搜索发现的大部分内容来自几年前,可能不再具有相关性.

这几天有明显的喜爱吗?如果没有,每个的优点和缺点是什么?

smalltalk squeak pharo

37
推荐指数
7
解决办法
1万
查看次数

从shell中使用Squeak

我可以将Squeak作为REPL(无GUI)启动,我可以在其中输入和评估Smalltalk表达式吗?我知道默认图像不允许这样.是否有关于如何构建可从命令行shell访问的最小映像的文档?

smalltalk squeak pharo

25
推荐指数
3
解决办法
2015
查看次数

Smalltalk中自我和你自己有什么区别?

在Smalltalk中,方法体中经常有两个术语:selfyourself.

他们之间有什么区别?

smalltalk visualworks squeak pharo amber-smalltalk

18
推荐指数
2
解决办法
3570
查看次数

Squeak/Pharo Trait和Newspeak Mixin有什么区别?

所以Squeak/Pharo支持Traits和Newspeak有Mixins.有什么不同?特质没有instVars但是Mixins有吗?

smalltalk squeak pharo newspeak

16
推荐指数
3
解决办法
2028
查看次数

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

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

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

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

谢谢!

smalltalk squeak pharo

16
推荐指数
3
解决办法
1590
查看次数

如何通过Pharo Finder查找示例?

在深入了解Pharo时,我印象最深刻的事情之一就是Finder可以通过示例找到它.我以前只在像Haskell这样的语言中看到过这种情况,在那里可以确定函数没有副作用.Pharo如何以安全,高效和无副作用的方式实现这一目标?

smalltalk pharo

14
推荐指数
1
解决办法
944
查看次数

如何在Smalltalk Squeak/Pharo中轻松更改为原生字体

随着每个新的Squeak/Pharo图像,我立即将字体更改为某些原生版本.这是很多鼠标点击,我想编写过程脚本.

fonts smalltalk squeak pharo

13
推荐指数
3
解决办法
2159
查看次数

如何开始使用monicello的git/github支持?

我最近读到git/github支持已被添加到Monticello.

我还看到一些在github上发布的Smalltalk项目.喜欢:

https://github.com/timfel/ratpack

我的问题:

  • 如何开始?
  • 为了从/向github加载/保存项目,我需要安装什么?

git version-control smalltalk github pharo

13
推荐指数
2
解决办法
647
查看次数

检查对象是否是给定类或其子类的实例

在Smalltalk中有一个简单的方法吗?我80%确定有一些方法,但无法在任何地方找到它.

我知道我可以用

(instance class = SomeClass) ifTrue:
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用superclass等...但我希望有内置的东西:)

smalltalk pharo

13
推荐指数
2
解决办法
6374
查看次数

Smalltalk字节码优化值得付出努力吗?

考虑类中的以下方法Juicer:

Juicer >> juiceOf: aString
    | fruit juice |
    fruit := self gather: aString.
    juice := self extractJuiceFrom: fruit.
    ^juice withoutSeeds
Run Code Online (Sandbox Code Playgroud)

它生成以下字节码

25 self                     ; 1
26 pushTemp: 0              ; 2
27 send: gather:
28 popIntoTemp: 1           ; 3
29 self                     ; 4
30 pushTemp: 1              ; 5
31 send: extractJuiceFrom:
32 popIntoTemp: 2           ; 6 <-
33 pushTemp: 2              ; 7 <-
34 send: withoutSeeds
35 returnTop
Run Code Online (Sandbox Code Playgroud)

现在请注意,32和33取消了:

25 self                     ; 1
26 pushTemp: 0              ; 2 …
Run Code Online (Sandbox Code Playgroud)

smalltalk squeak pharo

12
推荐指数
1
解决办法
672
查看次数