是否存在一个存档,其中托管SqueakVM的Slang源作为.st源代码的压缩?我想下载它们而不是试图强迫VMMaker加载到正在运行的ST映像并自己归档?我并没有试图避免这种懒惰,而是因为在30年的存档讨论和死链接中找到一套实际工作在现代ST上的指令显然超出了我的范围
我有蓝皮书,但它预先发出吱吱声,而不是OCR,所以我必须手动输入。
澄清一下:我不想运行VMMaker。我不想构建一个新的SqueakVM,我只是想在文本编辑器中打开SqueakVM的Slang源而不是Cog 并阅读它们。
答案 0 :(得分:4)
所有Slang源代码最近发布的Pharo fork都位于http://source.squeak.org/VMMaker项目页面http://source.squeak.org/VMMaker.html上的VMMaker包中。源包由名为.mcz的zip存档组成,例如: http://source.squeak.org/VMMaker/VMMaker.oscog-eem.839.mcz:
Archive: package-cache/VMMaker.oscog-eem.839.mcz
Length Date Time Name
-------- ---- ---- ----
16 07-30-14 19:41 package
724852 07-30-14 19:41 version
7186510 07-30-14 19:41 snapshot/source.st
7562064 07-30-14 19:41 snapshot.bin
-------- -------
15473442 4 files
然而,正如Nicolas Cellier所说,通过Monticello访问来源更容易;为此,您需要构建包含已加载的VMMaker和支持包的Squeak或Pharo映像。您还可以在其中运行VM模拟器,以便正确地进行探索。
为Cog分支构建VMMaker映像的脚本位于以下svn目录中,该目录是Cog svn源代码树的一部分,其中包含来自Slang,平台支持代码和构建目录的生成源,以及映像目录:
http://www.squeakvm.org/svn/squeak/branches/Cog/image/
BuildSqueakTrunkVMMakerImage.st
Cog VM是Squeak的快速JIT VM。我是它的主要作者。我的Cog网站是http://www.mirandabanda.org/cogblog/。该站点包含几篇描述VM的博客文章,VM构建的下载目录,项目概述等。
HTH
答案 1 :(得分:2)
我无法直接帮助您解决这些问题,但我可以为您提供有关如何构建PharoVM for OS X(10.9)的方法。要获取Slang源代码,您可能甚至不需要完全构建VM,而只需要执行github上的README来生成源代码(这相当于后面的步骤1)。
-fno-cse-follow-jumps
//#import <OpenGL/CGLMac ro.h>
更改为#import <OpenGL/GL.h>
platforms/iOS/vm/OSX/sqSqueakOSXOpenGLView.m
无论如何,这就是我构建我的VM的方式。这些说明在2014年3月开始运作,到撰写本文时仍然有效。
以上不再工作了。我编写了一个用于在10.9上构建PharoVM的脚本,可以找到in my github repo。随意使用,复制,修改您心中的内容。
答案 2 :(得分:1)
问题是哪个VMMaker?经典解释器VM,或COG(JIT)?
如果它来自Pharo,它将是COG,Max的答案是完美的,我没有什么可补充的。
如果是来自Squeak,我不建议使用.st文件,蒙蒂塞洛非常优越。
对于经典VM,您可以尝试How to load VMMaker in Squeak?
对于COG,它不断变化,不再有预建的图像,但如果从http://squeakvm.org/svn/squeak/branches/Cog加载svn源,那么你会找到一些启动脚本要在Squeak图像中加载所有必需的包,请参阅README或image / Build * .st文件的结尾 不知何故,构建图像的方法比预先构建的图像更好,因此它的进展也是如此。
答案 3 :(得分:1)
到目前为止,最简单的方法是将VMMaker加载到映像中并读取浏览器中的代码。毕竟,这是一个用于读取Smalltalk代码的工具。 Slang只是Smalltalk,有一些限制和软糖使它变得简单(哈!你读过codegen类如何进行转换?)输出C代码,从而使用'普通'工具构建vm。
如果您正在尝试了解虚拟机,您可能会从http://www.rowledge.org/resources/tim的主页/ Squeak / OE-Tour.pdf获得一些帮助,这通常被认为是Squeak虚拟机的标准工作现在。