标签: squeak

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
查看次数

何时使用Seaside组件,何时使用简单的渲染对象?

我最近在Seaside + Squeak开发了一个Web应用程序,并发现它是一种美妙的体验.Seaside真的比其他所有框架都要强大,我觉得我正在更高层次的抽象工作(在HTTP请求/响应周期和其他框架让你处理的HTML模板之上).

那就是说,我对Seaside组件有点困惑.我最近不得不在组件上显示对象列表(类似于stackoverflow首页).起初我将每个对象都设置为一个组件(WAComponent的子类),但这被证明是非常浪费的,我必须在父组件中动态设置#children才能使其工作.然后我尝试使它们成为渲染对象(不是WAComponent的子类的对象,并使用renderOn渲染:而不是renderContentOn:,就像组件一样).这工作正常,但现在他们无法再像组件那样访问会话对象中的全局状态(使用#session).然后我发现了"WACurrentSession value",它赋予任何对象访问当前Seaside会话对象的权限.我现在能够使它们成为渲染对象.另外,我发现我可以将很多其他更小的组件重写为渲染对象.

除了需要调用/回答或回溯状态外,还有哪些其他原因可以在渲染对象上使用组件?

smalltalk squeak seaside

17
推荐指数
1
解决办法
1517
查看次数

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
查看次数

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

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

fonts smalltalk squeak pharo

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

在吱吱声中编写GUI

如何在Squeak中编写GIU?我是Smalltalk的新手,我现在正在使用Cincom的VisualWorks,但我想尝试一下Squeak.我看到Squeak有Morphic的图形,但对于我的生活,我似乎无法找到一个编写基于MVC的GUI的包.

model-view-controller user-interface smalltalk visualworks squeak

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

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
查看次数

GNU Smalltalk与Squeak的兼容性如何

我正在开发一个吱吱声的应用程序,它根本不需要图形,它只是数据操作.问题是我在一个相当保守的环境中工作,我不认为我能够向我的经理们销售一个吱吱叫的应用程序(我觉得它们是明亮的颜色,圆形的界面和一般的"那是什么 - 那是 - 那个"吱吱的感觉会吓跑他们." 所以我正在考虑在GNU Smalltalk下运行应用程序,因为更"传统"的命令行界面不太可能吓跑利益相关者.

因此,任何人都可以提供或指向我,Squeak和Gnu Smalltalk之间的列表或一组功能/类是否兼容.换句话说,将应用程序从一个移植到另一个应用程序有多难(再次假设它是非图形的,所以不需要担心形态)?

谢谢!

porting smalltalk squeak

11
推荐指数
2
解决办法
2388
查看次数