如何从Squeak和Pharo调用shell命令?这些环境中是否包含某些unix语言中的system()函数以运行外部shell命令,或者反引号(不能让它们在这里对编辑器执行操作,但是当你按下左键时会得到的内容) 1"及以上"TAB")捕获命令的输出?
我试图比较Smalltalk中的两个字符串,但我似乎做错了什么.
我一直收到这个错误:
未处理的异常:非布尔接收器.继续求真.
stringOne := 'hello'.
stringTwo := 'hello'.
myNumber := 10.
[stringOne = stringTwo ] ifTrue:[
myNumber := 20].
Run Code Online (Sandbox Code Playgroud)
知道我做错了什么吗?
我真的开始学习Smalltalk了.现在我正在使用Squeak,但是有没有办法在Smalltalk中开发而不使用VM,但是像IDE一样?
我跑菲罗而我只是在排序的尖叫依赖注入点菜用例吉斯.Smalltalk有类似的东西吗?
我知道你可以通过明确地传递你的依赖关系来完成这一切.但这对我来说感觉很尴尬和冗长.
我希望每小时自动保存我的Pharo图像.
你会如何在图像中自动进行此操作?
我见过Pier项目这样做.但我不确定他们是怎么做到的.
TIA
我已经读过,使用smalltalk是一种乐趣,因为工具集使一切变得如此简单.版本控制,调试等.
这是真的?如果是这样,你可以详细说明.哪些工具优于Python或Ruby可能拥有的任何工具?
在Squeak/Pharo中是否有任何Smalltalk解析器允许我在Squeak/Pharo中浏览VisualWorks代码?我有兴趣阅读以块格式(而不是XML格式)导出的代码.
澄清:我不需要提交代码.
谢谢
这样的事情存在吗?
红宝石:
if __FILE__ == $0
main
end
Run Code Online (Sandbox Code Playgroud)
Perl的:
unless(caller) {
main;
}
Run Code Online (Sandbox Code Playgroud)
LUA:
if type(package.loaded[(...)]) ~= "userdata" then
main(arg)
else
module(..., package.seeall)
end
Run Code Online (Sandbox Code Playgroud) 在查看Smalltalk语法定义时,我注意到了一些不同的数组符号:
#[] "ByteArray"
#() "Literal Array"
{} "Array"
Run Code Online (Sandbox Code Playgroud)
Pharo 2.0更改了一些基本的API位,我找不到执行以下操作的新方法:
FileDirectory default directoryNamed: aFolderString.FileDirectory on: aFilename.FileDirectory default assureExistenceOfPath: aString.ReferenceStream on: stream.什么是新的等效代码?是否有可用于描述如何翻译或移植代码的更新指南?
smalltalk ×10
pharo ×5
squeak ×4
visualworks ×2
arrays ×1
projectpier ×1
seaside ×1
stream ×1
string ×1
windows ×1