├── .gitmodules
├── LICENSE
├── README.md
└── context.app
└── Contents
├── Info.plist
├── MacOS
└── applet
├── PkgInfo
├── RUNME
├── FEATURES.html
├── README.md
├── linux
│ ├── context.sh
│ └── memories
├── mac
│ ├── context.app
│ └── memories
└── windows
│ └── context.vbs
├── Resources
├── Scripts
│ └── main.scpt
├── applet.icns
├── applet.rsrc
├── context processor.app
│ └── Contents
│ │ ├── Info.plist
│ │ ├── JavaScript
│ │ └── Flow.js
│ │ ├── Library
│ │ └── QuickLook
│ │ │ └── SqueakQL.qlgenerator
│ │ │ └── Contents
│ │ │ ├── Info.plist
│ │ │ ├── MacOS
│ │ │ ├── SqueakQL
│ │ │ └── SqueakQL.sig
│ │ │ └── Resources
│ │ │ └── English.lproj
│ │ │ └── InfoPlist.strings
│ │ ├── Linux
│ │ ├── bin
│ │ │ ├── spoon
│ │ │ └── spoon.sh
│ │ ├── lib
│ │ │ └── spoon
│ │ │ │ └── 4.4.7-2357
│ │ │ │ ├── activeFilesystem.changes
│ │ │ │ ├── activeFilesystem.image
│ │ │ │ ├── so.AioPlugin
│ │ │ │ ├── so.ClipboardExtendedPlugin
│ │ │ │ ├── so.FileCopyPlugin
│ │ │ │ ├── so.Flow
│ │ │ │ ├── so.HostWindowPlugin
│ │ │ │ ├── so.KedamaPlugin
│ │ │ │ ├── so.KedamaPlugin2
│ │ │ │ ├── so.MIDIPlugin
│ │ │ │ ├── so.Mpeg3Plugin
│ │ │ │ ├── so.Squeak3D
│ │ │ │ ├── so.SqueakFFIPrims
│ │ │ │ ├── so.UnixOSProcessPlugin
│ │ │ │ ├── so.XDisplayControlPlugin
│ │ │ │ ├── so.vm-display-X11
│ │ │ │ ├── so.vm-display-custom
│ │ │ │ ├── so.vm-display-fbdev
│ │ │ │ ├── so.vm-display-null
│ │ │ │ ├── so.vm-sound-ALSA
│ │ │ │ ├── so.vm-sound-OSS
│ │ │ │ ├── so.vm-sound-custom
│ │ │ │ ├── so.vm-sound-null
│ │ │ │ └── spoonvm
│ │ └── share
│ │ │ └── man
│ │ │ └── man1
│ │ │ └── squeak.1
│ │ ├── MacOS
│ │ ├── Pharo
│ │ ├── Spoon VM Opt
│ │ └── Squeak
│ │ ├── PkgInfo
│ │ ├── Resources
│ │ ├── .lldbinit
│ │ ├── Flow.bundle
│ │ │ └── Contents
│ │ │ │ ├── Info.plist
│ │ │ │ ├── MacOS
│ │ │ │ └── Flow
│ │ │ │ └── Resources
│ │ │ │ ├── English.lproj
│ │ │ │ └── InfoPlist.strings
│ │ │ │ └── libportmidi.dylib
│ │ └── context
│ │ │ ├── changes
│ │ │ ├── memory
│ │ │ │ ├── 1-ContextPrecursors-crl.1.mcz
│ │ │ │ └── 2-Context-crl.2.mcz
│ │ │ └── processor
│ │ │ │ ├── 1 of 4 - remote messaging.cs
│ │ │ │ ├── 2 of 4 - unused-method removal.cs
│ │ │ │ ├── 3 of 4 - active imprinting.cs
│ │ │ │ └── 4 of 4 - collateral improvements.cs
│ │ │ ├── documentation
│ │ │ └── book
│ │ │ │ ├── pictures
│ │ │ │ ├── welcome.png
│ │ │ │ └── workspace.png
│ │ │ │ ├── the Spoon book.pages
│ │ │ │ └── the Spoon book.pdf
│ │ │ ├── memories
│ │ │ └── 946BE974-48B7-4D11-B209-6355B3E49722
│ │ │ │ └── 946BE974-48B7-4D11-B209-6355B3E49722
│ │ │ ├── processor
│ │ │ ├── Pharo3.0.app
│ │ │ │ └── Contents
│ │ │ │ │ ├── Info.plist
│ │ │ │ │ ├── MacOS
│ │ │ │ │ ├── Pharo
│ │ │ │ │ └── Plugins
│ │ │ │ │ │ ├── libAsynchFilePlugin.dylib
│ │ │ │ │ │ ├── libB3DAcceleratorPlugin.dylib
│ │ │ │ │ │ ├── libCroquetPlugin.dylib
│ │ │ │ │ │ ├── libFT2Plugin.dylib
│ │ │ │ │ │ ├── libFloatMathPlugin.dylib
│ │ │ │ │ │ ├── libIA32ABI.dylib
│ │ │ │ │ │ ├── libJPEGReadWriter2Plugin.dylib
│ │ │ │ │ │ ├── libJPEGReaderPlugin.dylib
│ │ │ │ │ │ ├── libJoystickTabletPlugin.dylib
│ │ │ │ │ │ ├── libLocalePlugin.dylib
│ │ │ │ │ │ ├── libMIDIPlugin.dylib
│ │ │ │ │ │ ├── libMpeg3Plugin.dylib
│ │ │ │ │ │ ├── libObjectiveCPlugin.dylib
│ │ │ │ │ │ ├── libQuicktimePlugin.dylib
│ │ │ │ │ │ ├── libRePlugin.dylib
│ │ │ │ │ │ ├── libSerialPlugin.dylib
│ │ │ │ │ │ ├── libSqueakFFIPrims.dylib
│ │ │ │ │ │ ├── libSqueakSSL.dylib
│ │ │ │ │ │ ├── libTestOSAPlugin.dylib
│ │ │ │ │ │ ├── libUUIDPlugin.dylib
│ │ │ │ │ │ ├── libcairo.2.dylib
│ │ │ │ │ │ ├── libfreetype.6.dylib
│ │ │ │ │ │ ├── libgit2.0.20.0.dylib
│ │ │ │ │ │ ├── libpixman-1.0.dylib
│ │ │ │ │ │ ├── libpng12.0.dylib
│ │ │ │ │ │ └── libssh2.dylib
│ │ │ │ │ └── Resources
│ │ │ │ │ ├── English.lproj
│ │ │ │ │ ├── InfoPlist.strings
│ │ │ │ │ └── MainMenu.nib
│ │ │ │ │ ├── Pharo.icns
│ │ │ │ │ ├── Pharo.ico
│ │ │ │ │ ├── Pharo.png
│ │ │ │ │ ├── Pharo3.0.changes
│ │ │ │ │ ├── Pharo3.0.image
│ │ │ │ │ ├── PharoChanges.icns
│ │ │ │ │ ├── PharoImage.icns
│ │ │ │ │ ├── PharoSources.icns
│ │ │ │ │ ├── PharoV30.sources
│ │ │ │ │ └── Squeak VM.r
│ │ │ └── context.config
│ │ │ └── workspaces
│ │ │ └── remote messaging
│ │ ├── _CodeSignature
│ │ ├── CodeDirectory
│ │ ├── CodeRequirements
│ │ ├── CodeResources
│ │ └── CodeSignature
│ │ └── win32
│ │ ├── 5
│ │ ├── flow.dll
│ │ ├── spoon.exe
│ │ └── spoon.ini
│ │ ├── 8
│ │ ├── flow.dll
│ │ └── spoon.exe
│ │ ├── FT2Plugin.dll
│ │ ├── SqueakFFIPrims.dll
│ │ ├── SqueakSSL.dll
│ │ ├── SqueakV3.sources
│ │ ├── flow.dll
│ │ ├── msvcr100d.dll
│ │ ├── msvcr120d.dll
│ │ ├── portforward.exe
│ │ ├── splash.bmp
│ │ ├── spoon.exe
│ │ └── spoon.ini
├── context.icns
└── description.rtfd
│ └── TXT.rtf
└── _CodeSignature
└── CodeResources
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "context.app/Contents/Resources/context processor.app/Contents/Resources/context/memories/CFE10A14-D883-4ACE-990A-0DDA86AA362B"]
2 | path = context.app/Contents/Resources/context processor.app/Contents/Resources/context/memories/CFE10A14-D883-4ACE-990A-0DDA86AA362B
3 | url = https://github.com/ccrraaiigg/CFE10A14-D883-4ACE-990A-0DDA86AA362B
4 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014 Craig Latta
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | context.app/Contents/RUNME/README.md
--------------------------------------------------------------------------------
/context.app/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleAllowMixedLocalizations
6 |
7 | CFBundleDevelopmentRegion
8 | English
9 | CFBundleExecutable
10 | applet
11 | CFBundleIconFile
12 | context.icns
13 | CFBundleIdentifier
14 | com.apple.ScriptEditor.id.context
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleName
18 | context 4 alpha 1
19 | CFBundlePackageType
20 | APPL
21 | CFBundleShortVersionString
22 | 4 alpha 1
23 | CFBundleSignature
24 | aplt
25 | LSBackgroundOnly
26 | 1
27 | LSMinimumSystemVersionByArchitecture
28 |
29 | x86_64
30 | 10.6
31 |
32 | LSRequiresCarbon
33 |
34 | WindowState
35 |
36 | bundleDividerCollapsed
37 |
38 | bundlePositionOfDivider
39 | 0.0
40 | dividerCollapsed
41 |
42 | eventLogLevel
43 | 2
44 | name
45 | ScriptWindowState
46 | positionOfDivider
47 | 477
48 | savedFrame
49 | 0 55 1436 822 0 0 1440 877
50 | selectedTab
51 | log
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/context.app/Contents/MacOS/applet:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/MacOS/applet
--------------------------------------------------------------------------------
/context.app/Contents/PkgInfo:
--------------------------------------------------------------------------------
1 | APPLaplt
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/FEATURES.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Context features
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Context features
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | Following are feature lists for various releases
23 | of Context.
24 |
25 |
26 |
27 |
28 |
29 | 4 alpha 1
30 |
31 |
32 |
33 | -
34 |
35 | support for remote browsing and basic Naiad connectivity,
36 | available for mainstream Squeak systems as Monticello packages, with a
37 | workspace of expressions for demoing
38 |
39 |
-
40 |
41 | more detailed Welcome page in the console
42 |
43 |
-
44 |
45 | remote exception handling
46 |
47 |
-
48 |
49 | remote process browsing
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/README.md:
--------------------------------------------------------------------------------
1 |
2 | You're almost in **Context**. To get there, start the console:
3 |
4 | - On Mac OS, double-click the app containing this file.
5 |
6 | - On Windows, double-click **windows/context.vbs**
7 |
8 | - On Linux, run **linux/context.sh**
9 |
10 | Hm, you're still reading this. Too bad. Well, perhaps a few comments
11 | about the structure of this thing are in order.
12 |
13 | **Context** is a **programming language**, in the form of a **virtual
14 | operating system**. It runs on multiple **host platforms** (like
15 | Linux, Mac OS, and Windows), and looks like a normal **app** on each
16 | platform. However, it presents the programmer with a
17 | platform-independent model of system resources (like files, sockets,
18 | devices, and processes), through an **object-oriented programming**
19 | interface. A **virtual machine** supports the programming interface on
20 | each platform, using appropriate platform-specific system calls.
21 |
22 | A summary of features one may expect to work in each release is in
23 | FEATURES.html.
24 |
25 | This file is part of the **Context** app, which takes the form of an
26 | Apple app directory tree, augmented to be self-revealing on Linux and
27 | Windows as well. When you start the app, it opens a **console**, from
28 | which you may control a set
29 | of **Smalltalk**
30 | systems. The console presents a list of all installed systems,
31 | describing what each one does and its current state. You can use the
32 | console to resume and suspend each one. You can also use the console
33 | to find and install additional systems from the net, and publish them
34 | there.
35 |
36 | ***objects, messages, and virtual machines***
37 |
38 | An **object** is a composition of **state** (a set of **references**
39 | to other objects) and **behavior** (sequences of **instructions** for
40 | manipulating those references). The instructions of an object's
41 | behavior are organized as **methods**, each of which corresponds to a
42 | **message** that the object
43 | understands. A **Smalltalk**
44 | system is a collection of objects sending messages to each other, thus
45 | invoking their behavior and changing their state.
46 |
47 | The behavior is performed by an instruction **processor**, also known
48 | as a **virtual machine**. Each time an object sends a message to
49 | another object, the processor performs the instructions in the method
50 | corresponding to that message. To keep track of the receiving object of
51 | the message, which instruction it is performing, and intermediate
52 | results, the processor creates a **context** object corresponding to
53 | that particular invocation of the message.
54 |
55 | In the course of performing a message, the processor will encounter
56 | instructions that describe sending another message. Each context keeps
57 | a reference to the context of the previous message the processor was
58 | performing. A chain of contexts is a **process**.
59 |
60 | Other instructions direct the processor to perform a built-in
61 | operation, rather than send a message. These operations are
62 | **primitives**. There are primitives for basic functions that can be
63 | handled by the physical processor, like addition, and those which can
64 | be handled by the host operating system, like creating a network
65 | socket. The processor implements a process scheduling model. Some
66 | primitives request that the processor suspend the current process and
67 | run a different one instead. The processor uses the scheduling model
68 | to decide which process should run next.
69 |
70 | Methods of instructions are generated by a **compiler**, from textual
71 | **source** written by humans or other objects. A compiler is an object
72 | like any other, part of the running system. In fact, source authors
73 | have an extensive set of tools (also known as an **interactive
74 | development environment**) for writing and compiling methods, all
75 | implemented as objects sending messages.
76 |
77 | The source level is where humans typically reason about messages. The
78 | source of a method consists of one or more **expressions**. Here's an
79 | example of an expression:
80 |
81 | 3 squared
82 |
83 | In that expression, the **receiver** object 3 is sent the message
84 | "squared". The **selector** of the message is the **symbol**
85 | "squared". This is an example of a **unary** message; there are no
86 | **parameters**. When there is at least one parameter, the selector may
87 | be a sequence of colon-terminated **keywords**. When there is only one
88 | paremeter, the selector may be a lone **operator** with no
89 | colon. Here's an expression with a message whose selector is a lone
90 | operator:
91 |
92 | 3 + 4
93 |
94 | This is called a **binary** message. Here's an expression with a
95 | message whose selector is a sequence of keywords:
96 |
97 | 3 to: 11 by: 4
98 |
99 | This is called a **keyword** message. The selector has two keywords,
100 | one for each parameter.
101 |
102 | Every object is an **instance** of a **class** object. The class keeps
103 | a set of methods corresponding to the messages that its instances
104 | understand. Classes are chained into a hierarchy; each class has a
105 | **superclass** and zero or more **subclasses**. When the processor
106 | performs the sending of a message, it looks for a method corresponding
107 | to that message in the methods of the receiving object's class. If it
108 | doesn't find one, it continues searching in the superclasses of that
109 | class. Because the processor searches for appropriate methods in this
110 | way, we say that an instance of a class **inherits** behavior from the
111 | superclasses.
112 |
113 | A method author can direct the compiler to create and install methods
114 | in any class at any time, while the system is running. This makes the
115 | system **dynamic**. The system is always running, and every
116 | modification that can be made to the system can be done with the
117 | system. This makes the system **reflective**; it models itself. Even
118 | the processor is implemented as objects sending messages.
119 |
120 | All the objects in the system together form the **memory** of the
121 | processor. Like a laptop's processor, the method instruction processor
122 | can make a **snapshot** of its memory at a particular moment, suspend
123 | operation, and resume operation with the snapshot later. This is known
124 | as **suspending** and **resuming** a memory. The console lets you
125 | discover and manipulate memory snapshots.
126 |
127 | ***sharing memories***
128 |
129 | The app directory is also
130 | a git repository,
131 | with a submodule repo nested within it for
132 | each locally-installed memory. Note that none of this structure is
133 | signed for any host platform. I'll set up a separate site for
134 | downloading properly-signed releases. When newly cloned, the master
135 | repo contains multiple installed memories: a **console** memory, and a
136 | **development** memory for each supported Smalltalk distribution.
137 |
138 | Currently, Squeak is supported. The
139 | next target is Pharo. We intend to
140 | support all distributions, including:
141 |
142 | - Squeak
143 |
144 | - Pharo
145 |
146 | - VisualWorks
147 |
148 | - VA
149 | Smalltalk
150 |
151 | - GemStone/S
152 |
153 | - GNU Smalltalk
154 |
155 | Please create an issue if we missed one. Thanks!
156 |
157 | For each memory you want to install locally, clone its repo directory
158 | to .../context.app/Contents/RUNME/memories/.
159 |
160 | The console memory contains the objects necessary to support essential
161 | object behavior, to grow itself through live synchronization with
162 | other memories, and to communicate through web services. A development
163 | memory has modules installed to support a development environment (a
164 | graphical interface, compiler, inspectors, debugger, etc.).
165 |
166 | A system includes a pair of memories: a **subject** and a
167 | **history**. Each history memory records the edit history of its
168 | subject, and synchronizes it with other subjects. It has no direct
169 | human interface support (it's **headless**), because it only needs to
170 | communicate with its subject memory. It communicates via **remote
171 | messages**: messages from objects in one memory to objects in another
172 | memory (run by a processor on any net-connected physical machine).
173 |
174 | The console memory is also headless; there's a web server running
175 | there. The Context app resumes the console memory, and the console
176 | memory resumes its web server. The Context app then opens a host web
177 | browser that visits the console web server. The behavior of the
178 | console (for example, resuming a GUI memory) is then provided as a web
179 | service.
180 |
181 | The console can interpret **command links**, special URLs which encode
182 | commands for controlling memories. When you click on a command link,
183 | the initial console answers a web page asking which live memory should
184 | perform the command. The chosen memory asks for confirmation before
185 | proceeding, through its own console. One thing a command can prescribe
186 | is module installation, using synchronization information in the
187 | link. Module and links for installing them can be cited together on
188 | web pages, indexed by search engines for later discovery.
189 |
190 | The console memory can become the history memory for another
191 | system. By installing modules, any memory can grow to include a set of
192 | apps. You can also unload modules.
193 |
194 | You're almost in **Context**. To get there, start the console:
195 |
196 | - On Mac OS, double-click the app containing this file.
197 |
198 | - On Windows, double-click **windows/context.vbs**
199 |
200 | - On Linux, run **linux/context.sh**
201 |
202 |
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/linux/context.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | ../Contents/Resources/Spoon\ 3\ beta\ 5\ processor.app/Contents/Linux/lib/spoon/4.4.7-2357/spoonvm ../Contents/Resources/Spoon\ 3\ beta\ 5\ processor.app/Contents/Resources/946BE974-48B7-4D11-B209-6355B3E49722.image &
4 | sleep 5
5 | xdg-open http://localhost:8090/README.html &
6 |
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/linux/memories:
--------------------------------------------------------------------------------
1 | ../../Resources/context processor.app/Contents/Resources/context/memories
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/mac/context.app:
--------------------------------------------------------------------------------
1 | ../../../../context.app
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/mac/memories:
--------------------------------------------------------------------------------
1 | ../../Resources/context processor.app/Contents/Resources/context/memories
--------------------------------------------------------------------------------
/context.app/Contents/RUNME/windows/context.vbs:
--------------------------------------------------------------------------------
1 | ' Start the Context console, a minimal web server one may use
2 | ' from a web browser to control Contexts.
3 |
4 | set shell = createobject("wscript.shell")
5 | shell.CurrentDirectory = "..\..\.."
6 | shell.run "..\win32\spoon.exe 946BE974-48B7-4D11-B209-6355B3E49722.image"
7 | ' Allow some time for the web server to start.
8 | WScript.Sleep 2000
9 | shell.run "iexplore http://localhost:8090/README.html"
10 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/Scripts/main.scpt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/Scripts/main.scpt
--------------------------------------------------------------------------------
/context.app/Contents/Resources/applet.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/applet.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/applet.rsrc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/applet.rsrc
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildMachineOSBuild
6 | 10K540
7 | CFBundleDevelopmentRegion
8 | English
9 | CFBundleDocumentTypes
10 |
11 |
12 | CFBundleTypeExtensions
13 |
14 | image
15 |
16 | CFBundleTypeIconFile
17 | contextImage.icns
18 | CFBundleTypeName
19 | context Image File
20 | CFBundleTypeOSTypes
21 |
22 | STim
23 |
24 | CFBundleTypeRole
25 | Editor
26 |
27 |
28 | CFBundleTypeExtensions
29 |
30 | sources
31 |
32 | CFBundleTypeIconFile
33 | contextSources.icns
34 | CFBundleTypeName
35 | context Sources File
36 | CFBundleTypeOSTypes
37 |
38 | STso
39 |
40 | CFBundleTypeRole
41 | Editor
42 |
43 |
44 | CFBundleTypeExtensions
45 |
46 | changes
47 |
48 | CFBundleTypeIconFile
49 | contextChanges.icns
50 | CFBundleTypeName
51 | context Changes File
52 | CFBundleTypeOSTypes
53 |
54 | STch
55 |
56 | CFBundleTypeRole
57 | Editor
58 |
59 |
60 | CFBundleTypeExtensions
61 |
62 | sobj
63 |
64 | CFBundleTypeIconFile
65 | SqueakScript.icns
66 | CFBundleTypeName
67 | Squeak Script File
68 | CFBundleTypeOSTypes
69 |
70 | SOBJ
71 |
72 | CFBundleTypeRole
73 | Editor
74 |
75 |
76 | CFBundleTypeExtensions
77 |
78 | pr
79 |
80 | CFBundleTypeIconFile
81 | SqueakProject.icns
82 | CFBundleTypeName
83 | Squeak Project File
84 | CFBundleTypeOSTypes
85 |
86 | STpr
87 |
88 | CFBundleTypeRole
89 | Editor
90 |
91 |
92 | CFBundleTypeName
93 | JPEG
94 | CFBundleTypeOSTypes
95 |
96 | JPEG
97 |
98 | CFBundleTypeRole
99 | Viewer
100 |
101 |
102 | CFBundleTypeName
103 | TEXT
104 | CFBundleTypeOSTypes
105 |
106 | TEXT
107 |
108 | CFBundleTypeRole
109 | Viewer
110 |
111 |
112 | CFBundleTypeName
113 | ttro
114 | CFBundleTypeOSTypes
115 |
116 | ttro
117 |
118 | CFBundleTypeRole
119 | Viewer
120 |
121 |
122 | CFBundleTypeName
123 | HTML
124 | CFBundleTypeOSTypes
125 |
126 | HTML
127 |
128 | CFBundleTypeRole
129 | Viewer
130 |
131 |
132 | CFBundleTypeName
133 | RTF
134 | CFBundleTypeOSTypes
135 |
136 | RTF
137 |
138 | CFBundleTypeRole
139 | Viewer
140 |
141 |
142 | CFBundleTypeName
143 | TIFF
144 | CFBundleTypeOSTypes
145 |
146 | TIFF
147 |
148 | CFBundleTypeRole
149 | Viewer
150 |
151 |
152 | CFBundleTypeName
153 | PICT
154 | CFBundleTypeOSTypes
155 |
156 | PICT
157 |
158 | CFBundleTypeRole
159 | Viewer
160 |
161 |
162 | CFBundleTypeName
163 | URL
164 | CFBundleTypeOSTypes
165 |
166 | URL
167 |
168 | CFBundleTypeRole
169 | Viewer
170 |
171 |
172 | CFBundleTypeName
173 | ZIP
174 | CFBundleTypeOSTypes
175 |
176 | ZIP
177 |
178 | CFBundleTypeRole
179 | Viewer
180 |
181 |
182 | CFBundleTypeName
183 | zip
184 | CFBundleTypeOSTypes
185 |
186 | zip
187 |
188 | CFBundleTypeRole
189 | Viewer
190 |
191 |
192 | CFBundleTypeName
193 | BINA
194 | CFBundleTypeOSTypes
195 |
196 | BINA
197 |
198 | CFBundleTypeRole
199 | Viewer
200 |
201 |
202 | CFBundleTypeName
203 | GIFf
204 | CFBundleTypeOSTypes
205 |
206 | GIFf
207 |
208 | CFBundleTypeRole
209 | Viewer
210 |
211 |
212 | CFBundleTypeName
213 | PNGf
214 | CFBundleTypeOSTypes
215 |
216 | PNGf
217 |
218 | CFBundleTypeRole
219 | Viewer
220 |
221 |
222 | CFBundleTypeName
223 | MP3
224 | CFBundleTypeOSTypes
225 |
226 | MP3
227 |
228 | CFBundleTypeRole
229 | Viewer
230 |
231 |
232 | CFBundleTypeName
233 | MP3!
234 | CFBundleTypeOSTypes
235 |
236 | MP3!
237 |
238 | CFBundleTypeRole
239 | Viewer
240 |
241 |
242 | CFBundleTypeName
243 | MP3U
244 | CFBundleTypeOSTypes
245 |
246 | MP3U
247 |
248 | CFBundleTypeRole
249 | Viewer
250 |
251 |
252 | CFBundleTypeName
253 | MPEG
254 | CFBundleTypeOSTypes
255 |
256 | MPEG
257 |
258 | CFBundleTypeRole
259 | Viewer
260 |
261 |
262 | CFBundleTypeName
263 | mp3!
264 | CFBundleTypeOSTypes
265 |
266 | mp3!
267 |
268 | CFBundleTypeRole
269 | Viewer
270 |
271 |
272 | CFBundleTypeName
273 | MPG2
274 | CFBundleTypeOSTypes
275 |
276 | MPG2
277 |
278 | CFBundleTypeRole
279 | Viewer
280 |
281 |
282 | CFBundleTypeName
283 | MPG3
284 | CFBundleTypeOSTypes
285 |
286 | MPG3
287 |
288 | CFBundleTypeRole
289 | Viewer
290 |
291 |
292 | CFBundleTypeName
293 | MPG
294 | CFBundleTypeOSTypes
295 |
296 | MPG
297 |
298 | CFBundleTypeRole
299 | Viewer
300 |
301 |
302 | CFBundleTypeName
303 | Mp3
304 | CFBundleTypeOSTypes
305 |
306 | mp3
307 |
308 | CFBundleTypeRole
309 | Viewer
310 |
311 |
312 | CFBundleTypeName
313 | M3U
314 | CFBundleTypeOSTypes
315 |
316 | M3U
317 |
318 | CFBundleTypeRole
319 | Viewer
320 |
321 |
322 | CFBundleTypeName
323 | SRCS
324 | CFBundleTypeOSTypes
325 |
326 | SRCS
327 |
328 | CFBundleTypeRole
329 | Viewer
330 |
331 |
332 | CFBundleTypeName
333 | Chng
334 | CFBundleTypeOSTypes
335 |
336 | Chng
337 |
338 | CFBundleTypeRole
339 | Viewer
340 |
341 |
342 | CFBundleTypeName
343 | HPS5
344 | CFBundleTypeOSTypes
345 |
346 | HPS5
347 |
348 | CFBundleTypeRole
349 | Viewer
350 |
351 |
352 | CFBundleExecutable
353 | context VM Opt
354 | CFBundleGetInfoString
355 | context VM 4.2.5b1 http://netjam.org/context
356 | CFBundleIconFile
357 | context.icns
358 | CFBundleIdentifier
359 | org.squeak.context
360 | CFBundleInfoDictionaryVersion
361 | 6.0
362 | CFBundleName
363 | context 3 beta 5
364 | CFBundlePackageType
365 | APPL
366 | CFBundleShortVersionString
367 | context VM 4.2.5b1
368 | CFBundleSignature
369 | FART
370 | CFBundleVersion
371 | 4.2.5b1
372 | CGDisableCoalescedUpdates
373 |
374 | DTCompiler
375 | 4.2
376 | DTPlatformBuild
377 | 4A2002a
378 | DTPlatformVersion
379 | GM
380 | DTSDKBuild
381 | 4A2002a
382 | DTSDKName
383 | macosx10.6
384 | DTXcode
385 | 0402
386 | DTXcodeBuild
387 | 4A2002a
388 | LSBackgroundOnly
389 | 1
390 | LSApplicationCategoryType
391 | public.app-category.developer-tools
392 | NSServices
393 |
394 |
395 | NSMenuItem
396 |
397 | default
398 | Squeak DoIt
399 |
400 | NSMessage
401 | doitandreturn
402 | NSPortName
403 | Squeak
404 | NSReturnTypes
405 |
406 | NSStringPboardType
407 |
408 | NSSendTypes
409 |
410 | NSStringPboardType
411 |
412 |
413 |
414 | SqueakBrowserMouseCmdButton1
415 | 3
416 | SqueakBrowserMouseCmdButton2
417 | 3
418 | SqueakBrowserMouseCmdButton3
419 | 2
420 | SqueakBrowserMouseControlButton1
421 | 1
422 | SqueakBrowserMouseControlButton2
423 | 3
424 | SqueakBrowserMouseControlButton3
425 | 2
426 | SqueakBrowserMouseNoneButton1
427 | 1
428 | SqueakBrowserMouseNoneButton2
429 | 3
430 | SqueakBrowserMouseNoneButton3
431 | 2
432 | SqueakBrowserMouseOptionButton1
433 | 2
434 | SqueakBrowserMouseOptionButton2
435 | 3
436 | SqueakBrowserMouseOptionButton3
437 | 2
438 | SqueakDebug
439 | 0
440 | SqueakEncodingType
441 | UTF-8
442 | SqueakExplicitWindowOpenNeeded
443 |
444 | SqueakFloatingWindowGetsFocus
445 |
446 | SqueakImageName
447 | 946BE974-48B7-4D11-B209-6355B3E49722
448 | SqueakMaxHeapSize
449 | 536870912
450 | SqueakMouseCmdButton1
451 | 3
452 | SqueakMouseCmdButton2
453 | 3
454 | SqueakMouseCmdButton3
455 | 2
456 | SqueakMouseControlButton1
457 | 1
458 | SqueakMouseControlButton2
459 | 3
460 | SqueakMouseControlButton3
461 | 2
462 | SqueakMouseNoneButton1
463 | 1
464 | SqueakMouseNoneButton2
465 | 3
466 | SqueakMouseNoneButton3
467 | 2
468 | SqueakMouseOptionButton1
469 | 2
470 | SqueakMouseOptionButton2
471 | 3
472 | SqueakMouseOptionButton3
473 | 2
474 | SqueakPluginsBuiltInOrLocalOnly
475 |
476 | SqueakQuitOnQuitAppleEvent
477 |
478 | SqueakResourceDirectory
479 | ./
480 | SqueakTrustedDirectory
481 | /foobar/tooBar/forSqueak/bogus/
482 | SqueakUIFlushPrimaryDeferNMilliseconds
483 | 20
484 | SqueakUIFlushSecondaryCheckForPossibleNeedEveryNMilliseconds
485 | 20
486 | SqueakUIFlushSecondaryCleanupDelayMilliseconds
487 | 25
488 | SqueakUIFlushUseHighPercisionClock
489 |
490 | SqueakUnTrustedDirectory
491 | ~/Library/Preferences/Squeak/Internet/My Squeak/
492 | SqueakUseFileMappedMMAP
493 |
494 | SqueakWindowAttribute
495 |
496 | ggAAHg==
497 |
498 | SqueakWindowHasTitle
499 |
500 | SqueakWindowType
501 | 6
502 | UTExportedTypeDeclarations
503 |
504 |
505 | UTTypeConformsTo
506 |
507 | public.data
508 |
509 | UTTypeDescription
510 | Squeak Image File
511 | UTTypeIdentifier
512 | org.squeak.image
513 | UTTypeTagSpecification
514 |
515 | com.apple.ostype
516 | STim
517 | public.filename-extension
518 |
519 | image
520 |
521 | public.mime-type
522 | application/squeak-image
523 |
524 |
525 |
526 | UTTypeConformsTo
527 |
528 | public.utf8-plain-text
529 |
530 | UTTypeDescription
531 | Squeak Sources File
532 | UTTypeIdentifier
533 | org.squeak.sources
534 | UTTypeTagSpecification
535 |
536 | com.apple.ostype
537 | STso
538 | public.filename-extension
539 |
540 | sources
541 |
542 | public.mime-type
543 | application/squeak-sources
544 |
545 |
546 |
547 | UTTypeConformsTo
548 |
549 | public.utf8-plain-text
550 |
551 | UTTypeDescription
552 | Squeak Changes File
553 | UTTypeIdentifier
554 | org.squeak.changes
555 | UTTypeTagSpecification
556 |
557 | com.apple.ostype
558 | STch
559 | public.filename-extension
560 |
561 | changes
562 |
563 | public.mime-type
564 | application/squeak-changes
565 |
566 |
567 |
568 | UTTypeConformsTo
569 |
570 | public.data
571 |
572 | UTTypeDescription
573 | Squeak Script File
574 | UTTypeIdentifier
575 | org.squeak.script
576 | UTTypeTagSpecification
577 |
578 | com.apple.ostype
579 | SOBJ
580 | public.filename-extension
581 |
582 | sobj
583 |
584 | public.mime-type
585 | application/squeak-script
586 |
587 |
588 |
589 | UTTypeConformsTo
590 |
591 | public.data
592 |
593 | UTTypeDescription
594 | Squeak Project File
595 | UTTypeIdentifier
596 | org.squeak.project
597 | UTTypeTagSpecification
598 |
599 | com.apple.ostype
600 | STpr
601 | public.filename-extension
602 |
603 | pr
604 |
605 | public.mime-type
606 | application/x-squeak-project
607 |
608 |
609 |
610 |
611 |
612 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/JavaScript/Flow.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Flow.js: networking plugin for the SqueakJS virtual machine.
3 | *
4 | */
5 |
6 | function Flow() {
7 | var interpreterProxy,
8 | primHandler;
9 |
10 | function setInterpreter(anInterpreterProxy) {
11 | // Slang interface
12 | interpreterProxy = anInterpreterProxy;
13 | // PrimHandler methods for convenience
14 | primHandler = interpreterProxy.vm.primHandler;
15 | // success
16 | return true;};
17 |
18 | function enableResolver(resolverHandle) {
19 | if (argCount !== 1) return false; // fail
20 | var resolverHandle = interpreterProxy.stackObjectValue(0);
21 | if (interpreterProxy.failed()) return false; // fail
22 | interpreterProxy.storePointerOfObjectwithValue(
23 |
24 |
25 |
26 | var result = examplePrimitiveHelperFunction(which);
27 | if (!result) return false; // fail
28 | var resultObj = primHandler.makeStString(result);
29 | interpreterProxy.popthenPush(1 + argCount, resultObj);
30 | return true; // success};
31 |
32 | // hide private functions
33 | return {
34 | setInterpreter: setInterpreter,
35 | examplePrimitive: examplePrimitiveInfo,}};
36 |
37 | // register plugin in global Squeak object
38 | window.addEventListener("load", function() {
39 | Squeak.registerExternalModule('Flow', Flow());});
40 |
41 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleDocumentTypes
8 |
9 |
10 | CFBundleTypeRole
11 | QLGenerator
12 | LSItemContentTypes
13 |
14 | org.squeak.project
15 |
16 |
17 |
18 | CFBundleExecutable
19 | SqueakQL
20 | CFBundleIdentifier
21 | org.squeak.qlgenerator.SqueakQL
22 | CFBundleInfoDictionaryVersion
23 | 6.0
24 | CFBundleName
25 | SqueakQL
26 | CFBundleShortVersionString
27 | 1
28 | CFBundleVersion
29 | 1.0
30 | CFPlugInDynamicRegisterFunction
31 |
32 | CFPlugInDynamicRegistration
33 | NO
34 | CFPlugInFactories
35 |
36 | FFD8E9C9-4777-4502-811C-15503F9D31EA
37 | QuickLookGeneratorPluginFactory
38 |
39 | CFPlugInTypes
40 |
41 | 5E2D9680-5022-40FA-B806-43349622E5B9
42 |
43 | FFD8E9C9-4777-4502-811C-15503F9D31EA
44 |
45 |
46 | CFPlugInUnloadFunction
47 |
48 | QLNeedsToBeRunInMainThread
49 |
50 | QLPreviewHeight
51 | 0
52 | QLPreviewWidth
53 | 0
54 | QLSupportsConcurrentRequests
55 |
56 | QLThumbnailMinimumSize
57 | 17
58 |
59 |
60 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL.sig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL.sig
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Resources/English.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Resources/English.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/bin/spoon:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # Launch spoonvm from the command line or a menu script, with a good
4 | # plugin path, text encodings and pulseaudio kludge
5 | #
6 | # Last edited: 2011-06-20 17:25:29 by craig on netjam
7 |
8 | PATH=/usr/bin:/bin
9 |
10 | realpath () {
11 | path="$1"
12 | while test -L "${path}"; do
13 | dir=`dirname "${path}"`
14 | dir=`cd "${dir}" && pwd -P`
15 | path=`basename "${path}"`
16 | path=`ls -l "${dir}/${path}" | sed 's,.* -> ,,'`
17 | if test `expr "${path}" : "/"` -eq 0; then
18 | path="${dir}/${path}"
19 | fi
20 | done
21 | if test -d "${path}"; then
22 | (cd "${path}" && pwd -P)
23 | else
24 | dir=`dirname "${path}"`
25 | base=`basename "${path}"`
26 | (cd "${dir}" && echo "`pwd -P`/${base}")
27 | fi
28 | }
29 |
30 | bindir=`realpath "${0}"`
31 | bindir=`dirname "${bindir}"`
32 | prefix=`dirname "${bindir}"`
33 | libdir="${prefix}/lib/spoon"
34 | plgdir="${libdir}/4.4.7-2357"
35 | useoss="true"
36 | vm="spoonvm"
37 | plugins=""
38 | wrapper=""
39 |
40 | for opt in $*; do
41 | case ${opt} in
42 | -vm-sound*) useoss="false";;
43 | -vm) case "$2" in sound*) useoss="false"; esac;;
44 | esac
45 | done
46 |
47 | # find the vm and set the plugin path
48 |
49 | if test -x "${plgdir}/${vm}"; then # bin/spoon -> lib/spoon/x.y-z/spoonvm
50 | vm="${plgdir}/${vm}"
51 | plugins="${plgdir}"
52 | elif test -x "${bindir}/${vm}"; then # bld/spoon -> bld/spoonvm
53 | vm="${bindir}/${vm}"
54 | plugins="${bindir}/%n"
55 | elif test -x `which ${vm}`; then
56 | vm=`which ${vm}`
57 | plugins=""
58 | else
59 | echo "cannot find ${vm}" >&2
60 | exit 1
61 | fi
62 |
63 | # command-line overrides environment, so communicate anything we decide here via the environment
64 |
65 | if test -z "${SQUEAK_PATHENC}"; then SQUEAK_PATHENC="UTF-8"; export SQUEAK_PATHENC; fi
66 | if test -z "${SQUEAK_ENCODING}"; then SQUEAK_ENCODING="UTF-8"; export SQUEAK_ENCODING; fi
67 |
68 | if test -z "${SQUEAK_PLUGINS}"; then
69 | if test -n "${plugins}"; then
70 | SQUEAK_PLUGINS="${plugins}"
71 | export SQUEAK_PLUGINS
72 | fi
73 | fi
74 |
75 | # deal with pulseaudio if it is running
76 |
77 | if test -z "${SQUEAK_VM}"; then
78 | if ${useoss}; then
79 | if pulseaudio --check 2>/dev/null; then
80 | if padsp true 2>/dev/null; then
81 | wrapper="padsp"
82 | SQUEAK_VM="sound-OSS"
83 | export SQUEAK_VM
84 | fi
85 | fi
86 | fi
87 | fi
88 |
89 | # fix broken locales
90 |
91 | if test -z "$LC_ALL"; then
92 | LC_ALL="$LANG"
93 | export LC_ALL
94 | fi
95 |
96 | # debug output
97 |
98 | if test "0$SQUEAK_DEBUG" -gt "0"; then
99 | set | fgrep SQUEAK_
100 | set -x
101 | fi
102 |
103 | # run the vm
104 |
105 | exec ${wrapper} "${vm}" "$@"
106 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/bin/spoon.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # Launch spoon from a menu, prompting for and/or installing an image
4 | #
5 | # Last edited: 2011-07-20 16:30:21 by craig on netjam
6 |
7 | PATH=/usr/bin:/bin
8 |
9 | if pwd -P 2>/dev/null 1>&2; then pwd="pwd -P"; else pwd="pwd"; fi
10 |
11 | me=`basename $0`
12 | bindir=`dirname $0`
13 | bindir=`cd ${bindir}; ${pwd}`
14 | prefix=`dirname ${bindir}`
15 | libdir="${prefix}/lib/spoon"
16 | vm="spoon"
17 |
18 | # find a way to display dialogues
19 |
20 | if test -n "$DISPLAY" -a -x "`which kdialog 2>/dev/null`"; then
21 | error () { kdialog --error "${me}: $*"; exit 1; }
22 | confirm () { if kdialog --yesno "${1} ${2}?"; then result="${2}"; else result=""; fi; }
23 | chooseItem () { title="$1"; shift; result=`kdialog --combobox "${title}" $*`; }
24 | findFile () { result=`kdialog --title "$1" --getopenfilename . '*.image'`; }
25 | findDirectory () { result=`kdialog --title "$1" --getexistingdirectory .`; }
26 | elif [ -n "$DISPLAY" -a -x "`which zenity 2>/dev/null`" ]; then
27 | error () { zenity --error --text "${me}: $*"; exit 1; }
28 | confirm () { if zenity --question --text="${1} ${2}?"; then result="${2}"; else result=""; fi; }
29 | chooseItem () { title="$1"; shift; result=`zenity --title "${title}" --list --column Images $*`; }
30 | findFile () { result=`zenity --title "$1" --file-selection --file-filter='*.image'`; }
31 | findDirectory () { result=`zenity --title "$1" --file-selection --directory`; }
32 | else
33 | error () { echo "${me}: $*" >&2; exit 1; }
34 | confirm () { error "this cannot happen"; }
35 | chooseItem () { error "this cannot happen"; }
36 | findFile () { error "no image name specified"; }
37 | findDirectory () { error "this cannot happen"; }
38 | fi
39 |
40 | # succeed if there are two or more arguments
41 |
42 | plural () { test -n "$2"; }
43 |
44 | # find the VM
45 |
46 | if test -x "${bindir}/${vm}"; then
47 | vm="${bindir}/${vm}"
48 | elif test -x "`which ${vm} 2>/dev/null`"; then
49 | vm="`which ${vm} 2>/dev/null`"
50 | else
51 | error "Cannot find ${vm}"
52 | fi
53 |
54 | # if we have arguments then assume an image name was given or we came
55 | # from a command line
56 |
57 | if test $# -gt 0; then
58 | exec "${vm}" "$@"
59 | fi
60 |
61 | # findFile "Choose a saved image to resume or cancel to install a new one"
62 | result=../../Resources/Spoon3alpha4.image
63 |
64 | if test -z "${result}"; then
65 | images=""
66 | if test -d "${libdir}"; then
67 | images=`cd "${libdir}"; ls *.image 2>/dev/null`
68 | fi
69 | if test -z "${images}"; then
70 | error "no image name specified and no images found in ${libdir}"
71 | exit 1
72 | fi
73 | if plural ${images}; then
74 | chooseItem "Choose an image to install" ${images}
75 | else
76 | confirm "Install image" ${images}
77 | fi
78 | if test -z "${result}"; then
79 | exit 0
80 | fi
81 | image=${result}
82 | changes=`basename ${image} .image`.changes
83 | findDirectory "Choose a destination directory for the image"
84 | if test -z "${result}"; then
85 | exit 0
86 | fi
87 | if test -e "${result}/${image}"; then
88 | confirm "Overwrite existing ${image} in" "${result}"
89 | if test -z "${result}"; then
90 | exit 0;
91 | fi
92 | fi
93 | cp -p "${libdir}/${image}" "${result}/."
94 | cp -p "${libdir}/${changes}" "${result}/."
95 | ln -s "${libdir}"/*.sources "${result}/."
96 | image="${result}/${image}"
97 | else
98 | image="${result}"
99 | fi
100 |
101 | cd "`dirname ${image}`"
102 | exec "${vm}" "`basename ${image}`"
103 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.changes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.changes
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.image:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.image
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.AioPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.AioPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.ClipboardExtendedPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.ClipboardExtendedPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.FileCopyPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.FileCopyPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Flow:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Flow
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.HostWindowPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.HostWindowPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin2
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.MIDIPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.MIDIPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Mpeg3Plugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Mpeg3Plugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Squeak3D:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Squeak3D
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.SqueakFFIPrims:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.SqueakFFIPrims
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.UnixOSProcessPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.UnixOSProcessPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.XDisplayControlPlugin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.XDisplayControlPlugin
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-X11:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-X11
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-custom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-custom
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-fbdev:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-fbdev
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-null:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-null
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-ALSA:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-ALSA
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-OSS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-OSS
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-custom:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-custom
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-null:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-null
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/spoonvm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Linux/lib/spoon/4.4.7-2357/spoonvm
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/MacOS/Pharo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/MacOS/Pharo
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/MacOS/Spoon VM Opt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/MacOS/Spoon VM Opt
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/MacOS/Squeak:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/MacOS/Squeak
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/PkgInfo:
--------------------------------------------------------------------------------
1 | APPLFAST
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/.lldbinit:
--------------------------------------------------------------------------------
1 | settings set target.run-args ~/Spoon/releases/contents/946BE974-48B7-4D11-B209-6355B3E49722.image
2 | breakpoint set -n breakHere
3 | r
4 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildMachineOSBuild
6 | 13C64
7 | CFBundleDevelopmentRegion
8 | English
9 | CFBundleExecutable
10 | flow
11 | CFBundleIdentifier
12 | com.apple.carbonbundletemplate
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1.0
23 | CSResourcesFileMapped
24 |
25 | DTCompiler
26 | com.apple.compilers.llvm.clang.1_0
27 | DTPlatformBuild
28 | 5B90f
29 | DTPlatformVersion
30 | GM
31 | DTSDKBuild
32 | 13A595
33 | DTSDKName
34 | macosx10.9
35 | DTXcode
36 | 0510
37 | DTXcodeBuild
38 | 5B90f
39 |
40 |
41 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/MacOS/Flow:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/MacOS/Flow
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/Resources/libportmidi.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/Flow.bundle/Contents/Resources/libportmidi.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/memory/2-Context-crl.2.mcz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/memory/2-Context-crl.2.mcz
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/processor/2 of 4 - unused-method removal.cs:
--------------------------------------------------------------------------------
1 | 'From Squeak4.2 of 4 February 2011 [latest update: #10966] on 2 November 2013 at 3:36:46 pm'!
Object subclass: #ObjectMemory
instanceVariableNames: 'memory youngStart endOfMemory memoryLimit nilObj falseObj trueObj specialObjectsOop rootTable rootTableCount extraRoots extraRootCount weakRoots weakRootCount child field parentField freeBlock lastHash allocationCount lowSpaceThreshold signalLowSpace compStart compEnd fwdTableNext fwdTableLast remapBuffer remapBufferCount allocationsBetweenGCs tenuringThreshold gcSemaphoreIndex gcBiasToGrow gcBiasToGrowGCLimit gcBiasToGrowThreshold statFullGCs statFullGCMSecs statIncrGCs statIncrGCMSecs statTenures statRootTableOverflows freeContexts freeLargeContexts interruptCheckCounter totalObjectCount shrinkThreshold growHeadroom headerTypeBytes youngStartLocal statMarkCount statSweepCount statMkFwdCount statCompMoveCount statGrowMemory statShrinkMemory statRootTableCount statAllocationCount statSurvivorCount statGCTime statSpecialMarkCount statIGCDeltaTime statpendingFinalizationSignals forceTenureFlag'
classVariableNames: 'BlockContextProto Byte0Mask Byte0Shift Byte1Mask Byte1Shift Byte1ShiftNegated Byte2Mask Byte2Shift Byte3Mask Byte3Shift Byte3ShiftNegated Byte4Mask Byte4Shift Byte4ShiftNegated Byte5Mask Byte5Shift Byte5ShiftNegated Byte6Mask Byte6Shift Byte7Mask Byte7Shift Byte7ShiftNegated Bytes3to0Mask Bytes7to4Mask ClassPseudoContext ClassTranslatedMethod ContextFixedSizePlusHeader DoAssertionChecks DoBalanceChecks Done ExtraRootSize GCTopMarker HashBits HeaderTypeClass HeaderTypeFree HeaderTypeGC InvokeCallbackSelector MethodContextProto MethodToReport NilContext RemapBufferSize ReportedMethodID RootTableRedZone RootTableSize StackStart StartField StartObj Upward'
poolDictionaries: 'VMObjectIndices VMSqueakV3BytecodeConstants VMSqueakV3ObjectRepresentationConstants'
category: 'VMMaker-Interpreter'!
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 3/27/2006 21:11'!
isNotStaleMethod: oop
| flagByte idByte |
(((oop bitAnd: 1) > 0) or: [(((self baseHeader: oop) >> 12) bitAnd: 16r1F) ~= 1]) ifTrue: [^true].
"Assume that all methods associated with contexts have been marked."
flagByte := self byteAt: (oop + 4 + (self byteLengthOf: oop) - 1).
(flagByte < 252)
ifTrue: [idByte := self byteAt: (oop + 4 + (self byteLengthOf: oop) - 3 - flagByte)]
ifFalse: [idByte := self byteAt: (oop + 4 + (self byteLengthOf: oop) - 1 - 5)].
^idByte >= 2r10000000! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 06:32'!
markAndTraceDiscardingStaleMethods: oop
"Mark all objects reachable from the given one.
Trace from the given object even if it is old.
Do not trace if it is already marked.
Mark it only if it is a young object."
"Tracer state variables:
child object being examined
field next field of child to examine
parentField field where child was stored in its referencing object"
| header lastFieldOffset action statMarkCountLocal |
header := self longAt: oop.
(header bitAnd: self markBit) = 0 ifFalse: [^ 0 "already marked"].
"record tracing status in object's header"
header := (header bitAnd: self allButTypeMask) bitOr: HeaderTypeGC.
(self oop: oop isGreaterThanOrEqualTo: youngStart)
ifTrue: [ header := header bitOr: self markBit ]. "mark only if young"
self longAt: oop put: header.
"initialize the tracer state machine"
parentField := GCTopMarker.
child := oop.
(self isWeakNonInt: oop) ifTrue: [
"Set lastFieldOffset before the weak fields in the receiver"
lastFieldOffset := (self nonWeakFieldsOf: oop) << self shiftForWord.
"And remember as weak root"
weakRootCount := weakRootCount + 1.
weakRoots at: weakRootCount put: oop.
] ifFalse: [
"Do it the usual way"
lastFieldOffset := self lastPointerOf: oop.
].
field := oop + lastFieldOffset.
action := StartField.
youngStartLocal := youngStart.
statMarkCountLocal := statMarkCount.
"run the tracer state machine until all objects reachable from oop are marked"
[action = Done] whileFalse: [
statMarkCountLocal := statMarkCountLocal + 1.
action = StartField ifTrue: [ action := self startField ].
action = StartObj ifTrue: [ action := self startObj ].
action = Upward ifTrue: [ action := self upwardDiscardingStaleMethods ].
].
statMarkCount := statMarkCountLocal.! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 06:34'!
markPhaseDiscardingStaleMethods
"Mark phase of the mark and sweep garbage collector. Set
the mark bits of all reachable objects. Free chunks are
untouched by this process."
"Assume: All non-free objects are initially unmarked. Root
objects were unmarked when they were made roots. (Make
sure this stays true!!!!)."
| oop |
"clear the recycled context lists"
freeContexts := NilContext.
freeLargeContexts := NilContext.
"trace the interpreter's objects, including the active stack
and special objects array"
self markAndTraceInterpreterOopsDiscardingStaleMethods.
statSpecialMarkCount := statMarkCount.
"trace the roots"
1 to: rootTableCount do: [:i |
oop := rootTable at: i.
self markAndTraceDiscardingStaleMethods: oop].
1 to: extraRootCount do:[:i|
oop := (extraRoots at: i) at: 0.
(self isIntegerObject: oop) ifFalse:[self markAndTraceDiscardingStaleMethods: oop]].
! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 06:39'!
upwardDiscardingStaleMethods
"Return from marking an object below. Incoming:
field = oop we just worked on, needs to be put away
parentField = where to put it in our object
NOTE: Type field of object below has already been restored!!!!!! "
| type header |
(parentField bitAnd: 1) = 1
ifTrue: [parentField = GCTopMarker
ifTrue: ["top of the chain"
header := (self longAt: field) bitAnd: self allButTypeMask.
type := self rightType: header.
self longAt: field put: (header bitOr: type). "install type on class oop"
^ Done]
ifFalse: ["was working on the extended class word"
child := field. "oop of class"
field := parentField - 1. "class word, ** clear the low bit **"
parentField := self longAt: field.
header := self longAt: field + self bytesPerWord. "base header word"
type := self rightType: header.
self longAt: field put: (child bitOr: type). "install type on class oop"
field := field + self bytesPerWord. "point at header"
"restore type bits"
header := header bitAnd: self allButTypeMask.
self longAt: field put: (header bitOr: type).
^ Upward]]
ifFalse: ["normal"
child := field. "who we worked on below"
field := parentField. "where to put it"
parentField := self longAt: field.
(self isNotStaleMethod: child)
ifTrue: [self longAt: field put: child]
ifFalse: [self longAt: field put: nilObj].
field := field - self bytesPerWord. "point at header"
^ StartField]! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 06:25'!
lastPointerOf: oop
"Return the byte offset of the last pointer field of the given object.
Works with CompiledMethods, as well as ordinary objects.
Can be used even when the type bits are not correct."
| fmt sz methodHeader header contextSize |
header := self baseHeader: oop.
fmt := header >> 8 bitAnd: 15.
"Use format 5 for marked method dictionaries."
fmt <= 5 ifTrue: [((fmt = 3 or: [fmt = 5]) and: [self isContextHeader: header])
ifTrue: ["contexts end at the stack pointer"
contextSize := self fetchStackPointerOf: oop.
^ CtxtTempFrameStart + contextSize * self bytesPerWord].
sz := self sizeBitsOfSafe: oop.
^ sz - self baseHeaderSize "all pointers"].
fmt < 12 ifTrue: [^ 0]. "no pointers"
"CompiledMethod: contains both pointers and bytes:"
methodHeader := self longAt: oop + self baseHeaderSize.
^ (methodHeader >> 10 bitAnd: 255) * self bytesPerWord + self baseHeaderSize! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 10/25/2006 15:16'!
isPointersNonInt: oop
"Answer true if the argument has only fields that can hold oops. See comment in formatOf:"
"Use format 5 for marked method dictionaries."
^ (self formatOf: oop) <= 5! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/26/2011 19:22'!
fullGCDiscardingStaleMethods
"Do a mark/sweep garbage collection of the entire object memory. Free inaccessible objects but do not move them."
| startTime |
DoAssertionChecks ifTrue: [self reverseDisplayFrom: 0 to: 7].
self preGCAction: true.
startTime := self ioMicroSecondClock.
statSweepCount := statMarkCount := statMkFwdCount := statCompMoveCount := 0.
self clearRootsTable.
youngStart := self startOfMemory. "process all of memory"
self markPhaseDiscardingStaleMethods.
"Sweep phase returns the number of survivors.
Use the up-to-date version instead the one from startup."
totalObjectCount := self sweepPhase.
self fullCompaction.
allocationCount := 0.
statFullGCs := statFullGCs + 1.
statGCTime := self ioMicroSecondClock.
statFullGCMSecs := statFullGCMSecs + (statGCTime - startTime).
self capturePendingFinalizationSignals.
youngStart := freeBlock. "reset the young object boundary"
self postGCAction.
DoAssertionChecks ifTrue: [self reverseDisplayFrom: 0 to: 7].
! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 06:29'!
lastPointerWhileForwarding: oop
"The given object may have its header word in a forwarding block. Find
the offset of the last pointer in the object in spite of this obstacle. "
| header fwdBlock fmt size methodHeader contextSize |
header := self longAt: oop.
(header bitAnd: self markBit) ~= 0
ifTrue: ["oop is forwarded; get its real header from its forwarding table entry"
fwdBlock := (header bitAnd: self allButMarkBitAndTypeMask) << 1.
DoAssertionChecks
ifTrue: [self fwdBlockValidate: fwdBlock].
header := self longAt: fwdBlock + self bytesPerWord].
fmt := header >> 8 bitAnd: 15.
"Use format 5 for marked method dictionaries."
fmt <= 5
ifTrue: [((fmt = 3 or: [fmt = 5]) and: [self isContextHeader: header])
ifTrue: ["contexts end at the stack pointer"
contextSize := self fetchStackPointerOf: oop.
^ CtxtTempFrameStart + contextSize * self bytesPerWord].
"do sizeBitsOf: using the header we obtained"
(header bitAnd: TypeMask) = HeaderTypeSizeAndClass
ifTrue: [size := (self sizeHeader: oop) bitAnd: self allButTypeMask]
ifFalse: [size := header bitAnd: self sizeMask].
^ size - self baseHeaderSize].
fmt < 12 ifTrue: [^ 0]. "no pointers"
methodHeader := self longAt: oop + self baseHeaderSize.
^ (methodHeader >> 10 bitAnd: 255) * self bytesPerWord + self baseHeaderSize! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 15:52'!
commonVariable: rcvr at: index put: value cacheIndex: atIx
"This code assumes the receiver has been identified at location atIx in the atCache."
| stSize fmt fixedFields valToPut |
stSize := atCache at: atIx+AtCacheSize.
((self oop: index isGreaterThanOrEqualTo: 1)
and: [self oop: index isLessThanOrEqualTo: stSize])
ifTrue:
[fmt := atCache at: atIx+AtCacheFmt.
"Use format 5 for marked method dictionaries."
fmt <= 5 ifTrue:
[fixedFields := atCache at: atIx+AtCacheFixedFields.
^ self storePointer: index + fixedFields - 1 ofObject: rcvr withValue: value].
fmt < 8 ifTrue: "Bitmap"
[valToPut := self positive32BitValueOf: value.
self successful ifTrue: [self storeLong32: index - 1 ofObject: rcvr withValue: valToPut].
^ nil].
fmt >= 16 "Note fmt >= 16 is an artificial flag for strings"
ifTrue: [valToPut := self asciiOfCharacter: value.
self successful ifFalse: [^ nil]]
ifFalse: [valToPut := value].
(self isIntegerObject: valToPut) ifTrue:
[valToPut := self integerValueOf: valToPut.
((valToPut >= 0) and: [valToPut <= 255]) ifFalse: [^ self primitiveFail].
^ self storeByte: index - 1 ofObject: rcvr withValue: valToPut]].
self primitiveFail! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:19'!
commonVariableInternal: rcvr at: index cacheIndex: atIx
"This code assumes the receiver has been identified at location atIx in the atCache."
| stSize fmt fixedFields result |
stSize := atCache at: atIx+AtCacheSize.
((self oop: index isGreaterThanOrEqualTo: 1)
and: [self oop: index isLessThanOrEqualTo: stSize])
ifTrue:
[fmt := atCache at: atIx+AtCacheFmt.
"Use format 5 for marked method dictionaries."
fmt <= 5 ifTrue:
[fixedFields := atCache at: atIx+AtCacheFixedFields.
^ self fetchPointer: index + fixedFields - 1 ofObject: rcvr].
fmt < 8 ifTrue: "Bitmap"
[result := self fetchLong32: index - 1 ofObject: rcvr.
self externalizeIPandSP.
result := self positive32BitIntegerFor: result.
self internalizeIPandSP.
^ result].
fmt >= 16 "Note fmt >= 16 is an artificial flag for strings"
ifTrue: "String"
[^ self characterForAscii: (self fetchByte: index - 1 ofObject: rcvr)]
ifFalse: "ByteArray"
[^ self integerObjectOf: (self fetchByte: index - 1 ofObject: rcvr)]].
self primitiveFail! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:40'!
subscript: array with: index format: fmt
"Note: This method assumes that the index is within bounds!!"
"Use format 5 for marked method dictionaries."
fmt <= 5 ifTrue: [ "pointer type objects"
^ self fetchPointer: index - 1 ofObject: array].
fmt < 8 ifTrue: [ "long-word type objects"
^ self positive32BitIntegerFor:
(self fetchLong32: index - 1 ofObject: array)
] ifFalse: [ "byte-type objects"
^ self integerObjectOf:
(self fetchByte: index - 1 ofObject: array)
].! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 15:54'!
subscript: array with: index storing: oopToStore format: fmt
"Note: This method assumes that the index is within bounds!!"
| valueToStore |
"Use format 5 for marked method dictionaries."
fmt <= 5
ifTrue: ["pointer type objects"
self storePointer: index - 1 ofObject: array
withValue: oopToStore]
ifFalse: [fmt < 8
ifTrue: ["long-word type objects"
valueToStore := self positive32BitValueOf: oopToStore.
self successful
ifTrue: [self storeLong32: index - 1 ofObject: array
withValue: valueToStore]]
ifFalse: ["byte-type objects"
(self isIntegerObject: oopToStore)
ifFalse: [primFailCode := 1].
valueToStore := self integerValueOf: oopToStore.
(valueToStore >= 0
and: [valueToStore <= 255])
ifFalse: [primFailCode := 1].
(self successful)
ifTrue: [self
storeByte: index - 1
ofObject: array
withValue: valueToStore]]]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:10'!
markAllActiveMethods
"Mark all methods associated with contexts."
| methodContextClass oop blockContextClass |
methodContextClass := self splObj: ClassMethodContext.
blockContextClass := self splObj: ClassBlockContext.
oop := self firstObject.
[self oop: oop isLessThan: endOfMemory] whileTrue: [
| oopClass |
oopClass := self fetchClassOf: oop.
((oopClass = methodContextClass) or: [oopClass = blockContextClass]) ifTrue: [
| meth flagByte pointer index |
(oopClass = blockContextClass)
ifTrue: [pointer := HomeIndex]
ifFalse: [pointer := MethodIndex].
meth := (
self
fetchPointer: pointer
ofObject: oop).
meth = nilObj ifFalse: [
flagByte := self byteAt: (meth + 4 + (self byteLengthOf: meth) - 1).
(flagByte < 252)
ifTrue: [index := meth + 4 + (self byteLengthOf: meth) - 3 - flagByte]
ifFalse: [index := meth + 4 + (self byteLengthOf: meth) - 1 - 5].
self
byteAt: index
put: ((self byteAt: index) bitOr: 2r10000000)]].
oop := self objectAfter: oop]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 10:48'!
snapshotWithoutStaleMethods
"update state of active context"
| activeProc dataSize rcvr setMacType |
compilerInitialized
ifTrue: [self compilerPreSnapshot]
ifFalse: [self storeContextRegisters: activeContext].
"update state of active process"
activeProc := self fetchPointer: ActiveProcessIndex ofObject: self schedulerPointer.
self
storePointer: SuspendedContextIndex
ofObject: activeProc
withValue: activeContext.
"compact memory and compute the size of the memory actually in use"
self markAllActiveMethods.
self incrementalGC.
"maximimize space for forwarding table"
self fullGCDiscardingStaleMethods.
self snapshotCleanUp.
dataSize := freeBlock - self startOfMemory. "Assume all objects are below the start of the free block"
self successful
ifTrue: [rcvr := self popStack.
"pop rcvr"
self push: trueObj.
self writeImageFile: dataSize.
"set Mac file type and creator; this is a noop on other platforms"
setMacType := self ioLoadFunction: 'setMacFileTypeAndCreator' From: 'FilePlugin'.
setMacType = 0 ifFalse: [self cCode: '((sqInt (*)(char *, char *, char *))setMacType)(imageName, "STim", "FAST")'].
self pop: 1].
"activeContext was unmarked in #snapshotCleanUp, mark it old "
self beRootIfOld: activeContext.
self successful
ifTrue: [self push: falseObj]
ifFalse: [self push: rcvr].
compilerInitialized
ifTrue: [self compilerPostSnapshot]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:08'!
lookupMethodInDictionary: dictionary
"This method lookup tolerates integers as Dictionary keys to
support execution of images in which Symbols have been
compacted out"
| length index mask wrapAround nextSelector methodArray |
length := self fetchWordLengthOf: dictionary.
mask := length - SelectorStart - 1.
(self isIntegerObject: messageSelector)
ifTrue: [index := (mask bitAnd: (self integerValueOf: messageSelector)) + SelectorStart]
ifFalse: [index := (mask bitAnd: (self hashBitsOf: messageSelector)) + SelectorStart].
"It is assumed that there are some nils in this dictionary, and search will
stop when one is encountered. However, if there are no nils, then wrapAround
will be detected the second time the loop gets to the end of the table."
wrapAround := false.
[true]
whileTrue: [nextSelector := self fetchPointer: index ofObject: dictionary.
nextSelector = nilObj ifTrue: [^ false].
nextSelector = messageSelector
ifTrue: [methodArray := self fetchPointer: MethodArrayIndex ofObject: dictionary.
newMethod := self fetchPointer: index - SelectorStart ofObject: methodArray.
"Check if newMethod is a CompiledMethod."
(self isCompiledMethod: newMethod)
ifTrue: [primitiveIndex := self primitiveIndexOf: newMethod.
primitiveIndex > MaxPrimitiveIndex
ifTrue: ["If primitiveIndex is out of range, set to zero before putting in
cache. This is equiv to primFail, and avoids the need to check on
every send."
primitiveIndex := 0]]
ifFalse: [
"could be an unrun method that got nilled out by the GC"
newMethod = nilObj ifFalse: [
"indicate that this is no compiled method - use primitiveInvokeObjectAsMethod"
primitiveIndex := 248]].
^ true].
index := index + 1.
index = length
ifTrue: [wrapAround
ifTrue: [^ false].
wrapAround := true.
index := SelectorStart]]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:23'!
fixedFieldsOf: oop format: fmt length: wordLength
"
NOTE: This code supports the backward-compatible extension to 8 bits of instSize.
When we revise the image format, it should become...
^ (classFormat >> 2 bitAnd: 16rFF) - 1
"
| class classFormat |
((fmt > 5) or: [fmt = 2]) ifTrue: [^ 0]. "indexable fields only"
fmt < 2 ifTrue: [^ wordLength]. "fixed fields only (zero or more)"
"fmt = 3, 4, or 5: mixture of fixed and indexable fields, so must look at class format word"
class := self fetchClassOf: oop.
classFormat := self formatOfClass: class.
^ (classFormat >> 11 bitAnd: 16rC0) + (classFormat >> 2 bitAnd: 16r3F) - 1
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:11'!
markAndTraceInterpreterOopsDiscardingStaleMethods
"Mark and trace all oops in the interpreter's state."
"Assume: All traced variables contain valid oops."
| oop |
self compilerMarkHook.
self markAndTraceDiscardingStaleMethods: specialObjectsOop. "also covers nilObj, trueObj, falseObj, and compact classes"
compilerInitialized
ifTrue: [self markAndTraceDiscardingStaleMethods: receiver.
self markAndTraceDiscardingStaleMethods: method]
ifFalse: [self markAndTraceDiscardingStaleMethods: activeContext].
self markAndTraceDiscardingStaleMethods: messageSelector.
self markAndTraceDiscardingStaleMethods: newMethod.
self markAndTraceDiscardingStaleMethods: methodClass.
self markAndTraceDiscardingStaleMethods: lkupClass.
self markAndTraceDiscardingStaleMethods: receiverClass.
1 to: remapBufferCount do: [:i |
oop := remapBuffer at: i.
(self isIntegerObject: oop) ifFalse: [self markAndTraceDiscardingStaleMethods: oop]].
"Callback support - trace suspended callback list"
1 to: jmpDepth do:[:i|
oop := suspendedCallbacks at: i.
(self isIntegerObject: oop) ifFalse:[self markAndTraceDiscardingStaleMethods: oop].
oop := suspendedMethods at: i.
(self isIntegerObject: oop) ifFalse:[self markAndTraceDiscardingStaleMethods: oop].
].
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/26/2011 17:46'!
primitiveSnapshotWithoutStaleMethods
"update state of active context"
| activeProc dataSize rcvr setMacType |
compilerInitialized
ifTrue: [self compilerPreSnapshot]
ifFalse: [self storeContextRegisters: activeContext].
"update state of active process"
activeProc := self fetchPointer: ActiveProcessIndex ofObject: self schedulerPointer.
self
storePointer: SuspendedContextIndex
ofObject: activeProc
withValue: activeContext.
"compact memory and compute the size of the memory actually in use"
self markAllActiveMethods.
self incrementalGC.
"maximimize space for forwarding table"
self fullGCDiscardingStaleMethods.
self snapshotCleanUp.
dataSize := freeBlock - self startOfMemory. "Assume all objects are below the start of the free block"
self successful
ifTrue: [rcvr := self popStack.
"pop rcvr"
self push: trueObj.
self writeImageFile: dataSize.
"set Mac file type and creator; this is a noop on other platforms"
setMacType := self ioLoadFunction: 'setMacFileTypeAndCreator' From: 'FilePlugin'.
setMacType = 0 ifFalse: [self cCode: '((sqInt (*)(char *, char *, char *))setMacType)(imageName, "STim", "FAST")'].
self pop: 1].
"activeContext was unmarked in #snapshotCleanUp, mark it old "
self beRootIfOld: activeContext.
self successful
ifTrue: [self push: falseObj]
ifFalse: [self push: rcvr].
compilerInitialized
ifTrue: [self compilerPostSnapshot]! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 10:54'!
validate: oop
| header type cc sz fmt nextChunk |
header := self longAt: oop.
type := header bitAnd: 3.
type = 2 ifFalse: [type = (self rightType: header) ifFalse: [self halt]].
sz := (header bitAnd: self sizeMask) >> 2.
(self isFreeObject: oop)
ifTrue: [ nextChunk := oop + (self sizeOfFree: oop) ]
ifFalse: [ nextChunk := oop + (self sizeBitsOf: oop) ].
nextChunk > endOfMemory
ifTrue: [oop = endOfMemory ifFalse: [self halt]].
(self headerType: nextChunk) = 0 ifTrue: [
(self headerType: (nextChunk + (bytesPerWord * 2))) = 0 ifFalse: [self halt]].
(self headerType: nextChunk) = 1 ifTrue: [
(self headerType: (nextChunk + bytesPerWord)) = 1 ifFalse: [self halt]].
type = 2 ifTrue:
["free block" ^ self].
fmt := (header >> 8) bitAnd: 16rF.
cc := (header >> 12) bitAnd: 31.
cc > 16 ifTrue: [self halt]. "up to 32 are legal, but not used"
type = 0 ifTrue:
["three-word header"
((self longAt: oop - bytesPerWord) bitAnd: 3) = type ifFalse: [self halt].
((self longAt: oop-(bytesPerWord * 2)) bitAnd: 3) = type ifFalse: [self halt].
((self longAt: oop - bytesPerWord) = type) ifTrue: [self halt]. "Class word is 0"
sz = 0 ifFalse: [self halt]].
type = 1 ifTrue:
["two-word header"
((self longAt: oop - bytesPerWord) bitAnd: 3) = type ifFalse: [self halt].
cc > 0 ifTrue: [sz = 1 ifFalse: [self halt]].
sz = 0 ifTrue: [self halt]].
type = 3 ifTrue:
["one-word header"
cc = 0 ifTrue: [self halt]].
"Use format 5 for marked method dictionaries.
fmt = 5 ifTrue: [self halt]."
fmt = 7 ifTrue: [self halt].
fmt >= 12 ifTrue:
["CompiledMethod -- check for integer header"
(self isIntegerObject: (self longAt: oop + bytesPerWord)) ifFalse: [self halt]].! !
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/processor/3 of 4 - active imprinting.cs:
--------------------------------------------------------------------------------
1 | 'From Squeak4.2 of 4 February 2011 [latest update: #10966] on 2 November 2013 at 3:36:42 pm'!
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:12'!
okayInterpreterObjects
| oopOrZero oop |
self okayFields: nilObj.
self okayFields: falseObj.
self okayFields: trueObj.
self okayFields: specialObjectsOop.
self okayFields: activeContext.
self okayFields: method.
self okayFields: receiver.
self okayFields: theHomeContext.
self okayFields: messageSelector.
self okayFields: newMethod.
self okayFields: lkupClass.
0 to: MethodCacheEntries - 1 by: MethodCacheEntrySize do: [ :i |
oopOrZero := methodCache at: i + MethodCacheSelector.
oopOrZero = 0 ifFalse: [
self okayFields: (methodCache at: i + MethodCacheSelector).
self okayFields: (methodCache at: i + MethodCacheClass).
self okayFields: (methodCache at: i + MethodCacheMethod).
].
].
0 to: MethodCacheEntries - 1 by: MethodCacheEntrySize do: [ :i |
oopOrZero := reportedMethodCache at: i + MethodCacheSelector.
oopOrZero = 0 ifFalse: [
self okayFields: (reportedMethodCache at: i + MethodCacheSelector).
self okayFields: (reportedMethodCache at: i + MethodCacheClass).
].
].
1 to: remapBufferCount do: [ :i |
oop := remapBuffer at: i.
(self isIntegerObject: oop) ifFalse: [
self okayFields: oop.
].
].
self okayActiveProcessStack.! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:33'!
initializeInterpreter: bytesToShift
"Initialize Interpreter state before starting execution of a new image."
interpreterProxy := self sqGetInterpreterProxy.
self dummyReferToProxy.
self initializeObjectMemory: bytesToShift.
self initCompilerHooks.
activeContext := nilObj.
theHomeContext := nilObj.
method := nilObj.
receiver := nilObj.
messageSelector := nilObj.
newMethod := nilObj.
methodClass := nilObj.
lkupClass := nilObj.
receiverClass := nilObj.
newNativeMethod := nilObj.
self flushMethodCache.
self loadInitialContext.
self initialCleanup.
interruptCheckCounter := 0.
interruptCheckCounterFeedBackReset := 1000.
interruptChecksEveryNms := 1.
nextPollTick := 0.
nextWakeupTick := 0.
lastTick := 0.
interruptKeycode := 2094. "cmd-. as used for Mac but no other OS"
interruptPending := false.
semaphoresUseBufferA := true.
semaphoresToSignalCountA := 0.
semaphoresToSignalCountB := 0.
deferDisplayUpdates := false.
pendingFinalizationSignals := 0.
globalSessionID := 0.
[globalSessionID = 0]
whileTrue: [globalSessionID := self
cCode: 'time(NULL) + ioMSecs()'
inSmalltalk: [(Random new next * SmallInteger maxVal) asInteger]].
jmpDepth := 0.
jmpMax := MaxJumpBuf. "xxxx: Must match the definition of jmpBuf and suspendedCallbacks"
reportingSends := false.
lastMethodWasCached := false! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 10/28/2006 00:32'!
commonSend
"Send a message, starting lookup with the receiver's class."
"Assume: messageSelector and argumentCount have been set, and that
the receiver and arguments have been pushed onto the stack,"
"Note: This method is inlined into the interpreter dispatch loop."
self sharedCodeNamed: 'commonSend' inCase: 131.
self internalFindNewMethod.
self internalExecuteNewMethod.
self reportLastSend.
self fetchNextBytecode! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:35'!
internalFindNewMethod
"Find the compiled method to be run when the current messageSelector is sent to the class 'lkupClass', setting the values of 'newMethod' and 'primitiveIndex'."
lastMethodWasCached := self lookupInMethodCacheSel: messageSelector class: lkupClass.
lastMethodWasCached ifFalse: [
"entry was not found in the cache; look it up the hard way"
self externalizeIPandSP.
self lookupMethodInClass: lkupClass.
self internalizeIPandSP.
self addNewMethodToCache].
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:39'!
reportLastSend
reportingSends
ifTrue: [
((messageSelector = (self splObj: SelectorUnreportedWait)) or: [(messageSelector = (self splObj: SelectorUnreportedSignal))]) ifFalse: [
(messageSelector = (self splObj: SelectorStopReportingSends))
ifTrue: [reportingSends := false]
ifFalse: [
(self lookupInReportedMethodCacheSel: messageSelector class: lkupClass) ifFalse: [
"The method just run may not have been reported, and the active process is being imprinted."
|
behaviorIDAddress
classAddress
isMeta
metaByte
metaclassAddress
methodIDAddress
methodIDIndex
selectorSize
|
self addNewMethodToReportedCache.
lastMethodWasCached
ifTrue: [classAddress := lkupClass]
ifFalse: [classAddress := methodClass].
isMeta := ((self fetchClassOf: classAddress) = (self fetchClassOf: (self fetchClassOf: (self fetchClassOf: nilObj)))).
"syntactic Slang concession"
methodIDAddress := self splObj: ReportedMethodID.
isMeta
ifTrue: [metaclassAddress := classAddress]
ifFalse: [metaclassAddress := self fetchClassOf: classAddress].
behaviorIDAddress := (
self
fetchPointer: 6
ofObject: metaclassAddress).
"Write the behavior ID bytes."
methodIDIndex := 0.
0
to: 15
do: [:index |
self
storeByte: methodIDIndex
ofObject: methodIDAddress
withValue: (
self
fetchByte: index
ofObject: behaviorIDAddress).
methodIDIndex := methodIDIndex + 1].
"Write the message selector."
selectorSize := self stSizeOf: messageSelector.
self
storeByte: methodIDIndex
ofObject: methodIDAddress
withValue: selectorSize.
methodIDIndex := methodIDIndex + 1.
0
to: (selectorSize - 1)
do: [:index |
self
storeByte: methodIDIndex
ofObject: methodIDAddress
withValue: (
self
fetchByte: index
ofObject: messageSelector).
methodIDIndex := methodIDIndex + 1].
"Write the meta bit."
"syntactic Slang concession"
isMeta
ifTrue: [metaByte := 2r10000000]
ifFalse: [metaByte := 0].
self
storeByte: methodIDIndex
ofObject: methodIDAddress
withValue: metaByte.
"Reset the rest of the ID so that it can be used in cache lookup in the object memory."
methodIDIndex := methodIDIndex + 1.
methodIDIndex
to: 127
do: [:index |
self
storeByte: index
ofObject: methodIDAddress
withValue: 0].
self
externalizeIPandSP;
synchronousSignal: (self splObj: MethodToReport);
internalizeIPandSP]]]]
ifFalse: [
(messageSelector = (self splObj: SelectorStartReportingSends)) ifTrue: [reportingSends := true]]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/21/2004 01:27'!
addNewMethodToReportedCache
"Add the given entry to the reported-method cache.
The policy is as follows:
Look for an empty entry anywhere in the reprobe chain.
If found, install the new entry there.
If not found, then install the new entry at the first probe position
and delete the entries in the rest of the reprobe chain.
This has two useful purposes:
If there is active contention over the first slot, the second
or third will likely be free for reentry after ejection.
Also, flushing is good when reprobe chains are getting full."
| probe hash |
self inline: false.
self compilerTranslateMethodHook. "newMethod x lkupClass -> newNativeMethod (may cause GC !!)"
hash := messageSelector bitXor: lkupClass. "drop low-order zeros from addresses"
0 to: CacheProbeMax-1 do:
[:p | probe := (hash >> p) bitAnd: MethodCacheMask.
(reportedMethodCache at: probe + MethodCacheSelector) = 0 ifTrue:
["Found an empty entry -- use it"
reportedMethodCache at: probe + MethodCacheSelector put: messageSelector.
reportedMethodCache at: probe + MethodCacheClass put: lkupClass.
^ nil]].
"OK, we failed to find an entry -- install at the first slot..."
probe := hash bitAnd: MethodCacheMask. "first probe"
reportedMethodCache at: probe + MethodCacheSelector put: messageSelector.
reportedMethodCache at: probe + MethodCacheClass put: lkupClass.
"...and zap the following entries"
1 to: CacheProbeMax-1 do:
[:p | probe := (hash >> p) bitAnd: MethodCacheMask.
reportedMethodCache at: probe + MethodCacheSelector put: 0].
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:24'!
flushMethodCache
"Flush the method cache. The method cache is flushed on every programming change and garbage collect."
1 to: MethodCacheSize do: [ :i | methodCache at: i put: 0 ].
1 to: MethodCacheSize do: [ :i | reportedMethodCache at: i put: 0 ].
self flushAtCache! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:26'!
flushMethodCacheFrom: memStart to: memEnd
"Flush entries in the method cache only if the oop address is within the given memory range.
This reduces overagressive cache clearing. Note the AtCache is fully flushed, 70% of the time
cache entries live in newspace, new objects die young"
| probe |
probe := 0.
1 to: MethodCacheEntries do: [:i |
(methodCache at: probe + MethodCacheSelector) = 0
ifFalse: [(((((self oop: (methodCache at: probe + MethodCacheSelector) isGreaterThanOrEqualTo: memStart)
and: [self oop: (methodCache at: probe + MethodCacheSelector) isLessThan: memEnd])
or: [(self oop: (methodCache at: probe + MethodCacheClass) isGreaterThanOrEqualTo: memStart)
and: [self oop: (methodCache at: probe + MethodCacheClass) isLessThan: memEnd]])
or: [(self oop: (methodCache at: probe + MethodCacheMethod) isGreaterThanOrEqualTo: memStart)
and: [self oop: (methodCache at: probe + MethodCacheMethod) isLessThan: memEnd]])
or: [(self oop: (methodCache at: probe + MethodCacheNative) isGreaterThanOrEqualTo: memStart)
and: [self oop: (methodCache at: probe + MethodCacheNative) isLessThan: memEnd]])
ifTrue: [methodCache at: probe + MethodCacheSelector put: 0]].
probe := probe + MethodCacheEntrySize].
probe := 0.
1 to: MethodCacheEntries do: [:i |
(reportedMethodCache at: probe + MethodCacheSelector) = 0
ifFalse: [(((((self oop: (reportedMethodCache at: probe + MethodCacheSelector) isGreaterThanOrEqualTo: memStart)
and: [self oop: (reportedMethodCache at: probe + MethodCacheSelector) isLessThan: memEnd])
or: [(self oop: (reportedMethodCache at: probe + MethodCacheClass) isGreaterThanOrEqualTo: memStart)
and: [self oop: (reportedMethodCache at: probe + MethodCacheClass) isLessThan: memEnd]])
or: [(self oop: (reportedMethodCache at: probe + MethodCacheMethod) isGreaterThanOrEqualTo: memStart)
and: [self oop: (reportedMethodCache at: probe + MethodCacheMethod) isLessThan: memEnd]])
or: [(self oop: (reportedMethodCache at: probe + MethodCacheNative) isGreaterThanOrEqualTo: memStart)
and: [self oop: (reportedMethodCache at: probe + MethodCacheNative) isLessThan: memEnd]])
ifTrue: [reportedMethodCache at: probe + MethodCacheSelector put: 0]].
probe := probe + MethodCacheEntrySize].
1 to: AtCacheTotalSize do: [:i | atCache at: i put: 0]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:38'!
lookupInMethodCacheSel: selector class: class
"This method implements a simple method lookup cache. If an entry for the given selector and class is found in the cache, set the values of 'newMethod' and 'primitiveIndex' and return true. Otherwise, return false."
"About the re-probe scheme: The hash is the low bits of the XOR of two large addresses, minus their useless lowest two bits. If a probe doesn't get a hit, the hash is shifted right one bit to compute the next probe, introducing a new randomish bit. The cache is probed CacheProbeMax times before giving up."
"WARNING: Since the hash computation is based on the object addresses of the class and selector, we must rehash or flush when compacting storage. We've chosen to flush, since that also saves the trouble of updating the addresses of the objects in the cache."
| hash probe |
(class = (self splObj: ClassProxy)) ifTrue: [
(selector ~= (self splObj: SelectorForward)) ifTrue: [^false]].
hash := selector bitXor: class. "shift drops two low-order zeros from addresses"
probe := hash bitAnd: MethodCacheMask. "first probe"
(((methodCache at: probe + MethodCacheSelector) = selector) and:
[(methodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := methodCache at: probe + MethodCacheMethod.
primitiveIndex := methodCache at: probe + MethodCachePrim.
newNativeMethod := methodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (methodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
probe := (hash >> 1) bitAnd: MethodCacheMask. "second probe"
(((methodCache at: probe + MethodCacheSelector) = selector) and:
[(methodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := methodCache at: probe + MethodCacheMethod.
primitiveIndex := methodCache at: probe + MethodCachePrim.
newNativeMethod := methodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (methodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
probe := (hash >> 2) bitAnd: MethodCacheMask.
(((methodCache at: probe + MethodCacheSelector) = selector) and:
[(methodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := methodCache at: probe + MethodCacheMethod.
primitiveIndex := methodCache at: probe + MethodCachePrim.
newNativeMethod := methodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (methodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
^ false
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 08:41'!
lookupInReportedMethodCacheSel: selector class: class
"This method implements a simple method lookup cache. If an entry for the given selector and class is found in the cache, set the values of 'newMethod' and 'primitiveIndex' and return true. Otherwise, return false."
"About the re-probe scheme: The hash is the low bits of the XOR of two large addresses, minus their useless lowest two bits. If a probe doesn't get a hit, the hash is shifted right one bit to compute the next probe, introducing a new randomish bit. The cache is probed CacheProbeMax times before giving up."
"WARNING: Since the hash computation is based on the object addresses of the class and selector, we must rehash or flush when compacting storage. We've chosen to flush, since that also saves the trouble of updating the addresses of the objects in the cache."
| hash probe |
hash := selector bitXor: class. "shift drops two low-order zeros from addresses"
probe := hash bitAnd: MethodCacheMask. "first probe"
(((reportedMethodCache at: probe + MethodCacheSelector) = selector) and:
[(reportedMethodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := reportedMethodCache at: probe + MethodCacheMethod.
primitiveIndex := reportedMethodCache at: probe + MethodCachePrim.
newNativeMethod := reportedMethodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (reportedMethodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
probe := (hash >> 1) bitAnd: MethodCacheMask. "second probe"
(((reportedMethodCache at: probe + MethodCacheSelector) = selector) and:
[(reportedMethodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := reportedMethodCache at: probe + MethodCacheMethod.
primitiveIndex := reportedMethodCache at: probe + MethodCachePrim.
newNativeMethod := reportedMethodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (reportedMethodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
probe := (hash >> 2) bitAnd: MethodCacheMask.
(((reportedMethodCache at: probe + MethodCacheSelector) = selector) and:
[(reportedMethodCache at: probe + MethodCacheClass) = class]) ifTrue:
[newMethod := reportedMethodCache at: probe + MethodCacheMethod.
primitiveIndex := reportedMethodCache at: probe + MethodCachePrim.
newNativeMethod := reportedMethodCache at: probe + MethodCacheNative.
primitiveFunctionPointer := self cCoerce: (reportedMethodCache at: probe + MethodCachePrimFunction) to: 'void *'.
^ true "found entry in cache; done"].
^ false
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:43'!
transferTo: aProc
"Record a process to be awoken on the next interpreter cycle.
ikp 11/24/1999 06:07 -- added hook for external runtime
compiler "
| sched oldProc newProc |
newProc := aProc.
sched := self schedulerPointer.
oldProc := self fetchPointer: ActiveProcessIndex ofObject: sched.
self storePointer: ActiveProcessIndex ofObject: sched withValue: newProc.
compilerInitialized
ifTrue: [self compilerProcessChange: oldProc to: newProc]
ifFalse: [self storePointer: SuspendedContextIndex ofObject: oldProc withValue: activeContext.
self newActiveContext: (self fetchPointer: SuspendedContextIndex ofObject: newProc).
self storePointer: SuspendedContextIndex ofObject: newProc withValue: nilObj.
(
(
self
fetchPointer: BeingImprintedIndex
ofObject: (
self
fetchPointer: ActiveProcessIndex
ofObject: self schedulerPointer)
)
== trueObj
)
ifTrue: [reportingSends := true]
ifFalse: [reportingSends := false]].
reclaimableContextCount := 0! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 16:27'!
initialize
"Initialize the InterpreterSimulator when running the interpreter inside
Smalltalk. The primary responsibility of this method is to allocate
Smalltalk Arrays for variables that will be declared as statically-allocated
global arrays in the translated code."
"initialize class variables"
ObjectMemory initializeConstants.
Interpreter initialize.
"Note: we must initialize ConstMinusOne differently for simulation,
due to the fact that the simulator works only with +ve 32-bit values"
ConstMinusOne := self integerObjectOf: -1.
methodCache := Array new: MethodCacheSize.
reportedMethodCache := Array new: MethodCacheSize.
atCache := Array new: AtCacheTotalSize.
self flushMethodCache.
rootTable := Array new: RootTableSize.
weakRoots := Array new: RootTableSize + RemapBufferSize + 100.
remapBuffer := Array new: RemapBufferSize.
semaphoresUseBufferA := true.
semaphoresToSignalA := Array new: SemaphoresToSignalSize.
semaphoresToSignalB := Array new: SemaphoresToSignalSize.
externalPrimitiveTable := CArrayAccessor on: (Array new: MaxExternalPrimitiveTableSize).
primitiveTable := self class primitiveTable.
pluginList := #().
mappedPluginEntries := #().
"initialize InterpreterSimulator variables used for debugging"
byteCount := 0.
sendCount := 0.
quitBlock := [^ self].
traceOn := true.
myBitBlt := BitBltSimulator new setInterpreter: self.
filesOpen := OrderedCollection new.
headerTypeBytes := CArrayAccessor on: (Array with: self bytesPerWord * 2 with: self bytesPerWord with: 0 with: 0).
transcript := Transcript.
displayForm := 'Display has not yet been installed' asDisplayText form.
! !
!ObjectMemory class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 7/18/2011 22:37'!
initializeSpecialObjectIndices
"Initialize indices into specialObjects array."
NilObject := 0.
FalseObject := 1.
TrueObject := 2.
SchedulerAssociation := 3.
ClassBitmap := 4.
ClassInteger := 5.
ClassString := 6.
ClassArray := 7.
"SmalltalkDictionary := 8." "Do not delete!!"
ClassFloat := 9.
ClassMethodContext := 10.
ClassBlockContext := 11.
ClassPoint := 12.
ClassLargePositiveInteger := 13.
TheDisplay := 14.
ClassMessage := 15.
ClassCompiledMethod := 16.
TheLowSpaceSemaphore := 17.
ClassSemaphore := 18.
ClassCharacter := 19.
SelectorDoesNotUnderstand := 20.
SelectorCannotReturn := 21.
ProcessSignalingLowSpace := 22. "was TheInputSemaphore"
SpecialSelectors := 23.
CharacterTable := 24.
SelectorMustBeBoolean := 25.
ClassByteArray := 26.
ClassProcess := 27.
CompactClasses := 28.
TheTimerSemaphore := 29.
TheInterruptSemaphore := 30.
SelectorCannotInterpret := 34.
"Was MethodContextProto := 35."
ClassBlockClosure := 36.
"Was BlockContextProto := 37."
ExternalObjectsArray := 38.
ClassPseudoContext := 39.
ClassTranslatedMethod := 40.
TheFinalizationSemaphore := 41.
ClassLargeNegativeInteger := 42.
ClassExternalAddress := 43.
ClassExternalStructure := 44.
ClassExternalData := 45.
ClassExternalFunction := 46.
ClassExternalLibrary := 47.
SelectorAboutToReturn := 48.
SelectorRunWithIn := 49.
SelectorAttemptToAssign := 50.
"PrimErrTableIndex := 51. in Interpreter class>>initializePrimitiveErrorCodes"
ClassAlien := 52.
InvokeCallbackSelector := 53.
ClassUnsafeAlien := 54.
ClassWeakFinalizer := 55.
ClassProxy := 107.
SelectorForward := 108.
SelectorInitProxy := 109.
SelectorProxyHash := 110.
SelectorCounterpart := 111.
SelectorIsNil := 112.
SelectorNextInstance := 113.
SelectorStoreOnProxyStream := 114.
SelectorStartReportingSends := 115.
ReportedMethodID := 116.
MethodToReport := 117.
SelectorStopReportingSends := 118.
SelectorUnreportedWait := 119.
SelectorUnreportedSignal := 120! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:44'!
declareCVarsIn: aCCodeGenerator
aCCodeGenerator addHeaderFile:''.
aCCodeGenerator
var: #interpreterProxy
type: #'struct VirtualMachine*'.
aCCodeGenerator
var: #primitiveTable
declareC: 'void *primitiveTable[', (MaxPrimitiveIndex +2) printString, '] = ', self primitiveTableString.
aCCodeGenerator
var: #primitiveFunctionPointer
declareC: 'void *primitiveFunctionPointer' . "xxxx FIX THIS STUPIDITY xxxx - ikp. What he means is use a better type than void *, apparently - tpr"
aCCodeGenerator
var: #methodCache
declareC: 'long methodCache[', (MethodCacheSize + 1) printString, ']'.
aCCodeGenerator
var: #reportedMethodCache
declareC: 'long reportedMethodCache[', (MethodCacheSize + 1) printString, ']'.
aCCodeGenerator
var: #atCache
declareC: 'sqInt atCache[', (AtCacheTotalSize + 1) printString, ']'.
aCCodeGenerator var: #statGCTime type: #'sqLong'.
aCCodeGenerator var: #statFullGCMSecs type: #'sqLong'.
aCCodeGenerator var: #statIGCDeltaTime type: #'sqLong'.
aCCodeGenerator var: #statIncrGCMSecs type: #'sqLong'.
aCCodeGenerator var: #localIP type: #'char*'.
aCCodeGenerator var: #localSP type: #'char*'.
aCCodeGenerator var: #showSurfaceFn type: #'void*'.
aCCodeGenerator var: 'semaphoresToSignalA'
declareC: 'sqInt semaphoresToSignalA[', (SemaphoresToSignalSize + 1) printString, ']'.
aCCodeGenerator var: 'semaphoresToSignalB'
declareC: 'sqInt semaphoresToSignalB[', (SemaphoresToSignalSize + 1) printString, ']'.
aCCodeGenerator
var: #compilerHooks
declareC: 'sqInt (*compilerHooks[', (CompilerHooksSize + 1) printString, '])()'.
aCCodeGenerator
var: #interpreterVersion
declareC: 'const char *interpreterVersion = "', SmalltalkImage current datedVersion, ' [', SmalltalkImage current lastUpdateString,']"'.
aCCodeGenerator
var: #obsoleteIndexedPrimitiveTable
declareC: 'char* obsoleteIndexedPrimitiveTable[][3] = ', self obsoleteIndexedPrimitiveTableString.
aCCodeGenerator
var: #obsoleteNamedPrimitiveTable
declareC: 'const char* obsoleteNamedPrimitiveTable[][3] = ', self obsoleteNamedPrimitiveTableString.
aCCodeGenerator
var: #externalPrimitiveTable
declareC: 'void *externalPrimitiveTable[', (MaxExternalPrimitiveTableSize + 1) printString, ']'.
self declareCAsOop: {
#instructionPointer .
#method .
#newMethod .
#activeContext .
#theHomeContext .
#stackPointer }
in: aCCodeGenerator.
aCCodeGenerator
var: #jmpBuf
declareC: 'jmp_buf jmpBuf[', (MaxJumpBuf + 1) printString, ']'.
aCCodeGenerator
var: #suspendedCallbacks
declareC: 'sqInt suspendedCallbacks[', (MaxJumpBuf + 1) printString, ']'.
aCCodeGenerator
var: #suspendedMethods
declareC: 'sqInt suspendedMethods[', (MaxJumpBuf + 1) printString, ']'.
"Reinitialized at interpreter entry by #initializeImageFormatVersion"
aCCodeGenerator
var: #imageFormatVersionNumber
declareC: 'sqInt imageFormatVersionNumber = 0'.
"Declared here to prevent inclusion in foo struct by CCodeGeneratorGlobalStructure"
aCCodeGenerator
var: #imageFormatInitialVersion
declareC: 'sqInt imageFormatInitialVersion = 0'
! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:48'!
initializeSchedulerIndices
"Class ProcessorScheduler"
ProcessListsIndex := 0.
ActiveProcessIndex := 1.
"Class LinkedList"
FirstLinkIndex := 0.
LastLinkIndex := 1.
"Class Semaphore"
ExcessSignalsIndex := 2.
"Class Link"
NextLinkIndex := 0.
"Class Process"
SuspendedContextIndex := 1.
PriorityIndex := 2.
MyListIndex := 3.
BeingImprintedIndex := 6! !
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/changes/processor/4 of 4 - collateral improvements.cs:
--------------------------------------------------------------------------------
1 | 'From Squeak4.2 of 4 February 2011 [latest update: #10966] on 2 November 2013 at 3:36:52 pm'!
LargeIntegersPlugin subclass: #LargeIntegersSimulator
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'System-Spoon-Virtual Machine Support'!
!InterpreterPlugin methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:49'!
msg: s
self cCode: 'fprintf(stderr, "\n%s: %s", moduleName, s)' inSmalltalk: [Transcript "cr; show: self class moduleName , ': ' , s" nextPut: $.; endEntry]! !
!BitBltSimulation methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 3/2/2012 13:54'!
halftoneAt: idx
"Return a value from the halftone pattern."
^interpreterProxy long32At: halftoneBase + (idx \\ halftoneHeight * 4)! !
!BitBltSimulation methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 3/2/2012 22:48'!
primitiveDisplayString
| kernDelta xTable glyphMap stopIndex startIndex sourceString bbObj maxGlyph ascii glyphIndex sourcePtr left quickBlt |
interpreterProxy methodArgumentCount = 6
ifFalse:[^interpreterProxy primitiveFail].
kernDelta := interpreterProxy stackIntegerValue: 0.
xTable := interpreterProxy stackObjectValue: 1.
glyphMap := interpreterProxy stackObjectValue: 2.
((interpreterProxy fetchClassOf: xTable) = interpreterProxy classArray and:[
(interpreterProxy fetchClassOf: glyphMap) = interpreterProxy classArray])
ifFalse:[^interpreterProxy primitiveFail].
(interpreterProxy slotSizeOf: glyphMap) = 256 ifFalse:[^interpreterProxy primitiveFail].
interpreterProxy failed ifTrue:[^nil].
maxGlyph := (interpreterProxy slotSizeOf: xTable) - 2.
stopIndex := interpreterProxy stackIntegerValue: 3.
startIndex := interpreterProxy stackIntegerValue: 4.
sourceString := interpreterProxy stackObjectValue: 5.
(interpreterProxy isBytes: sourceString) ifFalse:[^interpreterProxy primitiveFail].
(startIndex > 0 and:[stopIndex > 0 and:[
stopIndex <= (interpreterProxy byteSizeOf: sourceString)]])
ifFalse:[^interpreterProxy primitiveFail].
bbObj := interpreterProxy stackObjectValue: 6.
(self loadBitBltFrom: bbObj) ifFalse:[^interpreterProxy primitiveFail].
(combinationRule = 30 or:[combinationRule = 31]) "needs extra source alpha"
ifTrue:[^interpreterProxy primitiveFail].
"See if we can go directly into copyLoopPixMap (usually we can)"
quickBlt := destBits ~= 0 "no OS surfaces please"
and:[sourceBits ~= 0 "and again"
and:[noSource = false "needs a source"
and:[sourceForm ~= destForm "no blits onto self"
and:[(cmFlags ~= 0
or:[sourceMSB ~= destMSB
or:[sourceDepth ~= destDepth]]) "no point using slower version"
]]]].
left := destX.
sourcePtr := interpreterProxy firstIndexableField: sourceString.
startIndex to: stopIndex do:[:charIndex|
ascii := interpreterProxy byteAtPointer: sourcePtr + charIndex - 1.
glyphIndex := interpreterProxy fetchInteger: ascii ofObject: glyphMap.
(glyphIndex < 0 or:[glyphIndex > maxGlyph])
ifTrue:[^interpreterProxy primitiveFail].
sourceX := interpreterProxy fetchInteger: glyphIndex ofObject: xTable.
width := (interpreterProxy fetchInteger: glyphIndex+1 ofObject: xTable) - sourceX.
interpreterProxy failed ifTrue:[^nil].
self clipRange. "Must clip here"
(bbW > 0 and:[bbH > 0]) ifTrue: [
quickBlt ifTrue:[
self destMaskAndPointerInit.
self copyLoopPixMap.
"both, hDir and vDir are known to be > 0"
affectedL := dx.
affectedR := dx + bbW.
affectedT := dy.
affectedB := dy + bbH.
] ifFalse:[self copyBits]].
interpreterProxy failed ifTrue:[^nil].
destX := destX + width + kernDelta.
].
affectedL := left.
self showDisplayBits.
interpreterProxy pop: 6. "pop args, return rcvr"! !
!BitBltSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 2/26/2012 21:42'!
dstLongAt: dstIndex
interpreterProxy isInterpreterProxy
ifTrue:[^dstIndex long32At: 0].
((dstIndex anyMask: 3) or:[dstIndex + 4 < destBits or:[
dstIndex > (destBits + (destPitch * destHeight))]])
ifTrue:[self error:'Out of bounds'].
^interpreterProxy long32At: dstIndex! !
!BitBltSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 2/26/2012 21:43'!
dstLongAt: dstIndex put: value
interpreterProxy isInterpreterProxy
ifTrue:[^dstIndex long32At: 0 put: value].
((dstIndex anyMask: 3) or:[dstIndex < destBits or:[
dstIndex >= (destBits + (destPitch * destHeight))]])
ifTrue:[self error:'Out of bounds'].
^interpreterProxy long32At: dstIndex put: value! !
!BitBltSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 2/26/2012 21:42'!
srcLongAt: srcIndex
interpreterProxy isInterpreterProxy
ifTrue:[^srcIndex long32At: 0].
((srcIndex anyMask: 3) or:[srcIndex + 4 < sourceBits or:[
srcIndex > (sourceBits + (sourcePitch * sourceHeight))]])
ifTrue:[self error:'Out of bounds'].
^interpreterProxy long32At: srcIndex! !
!BitBltSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 3/2/2012 22:48'!
tableLookup: table at: index
^ interpreterProxy long32At: (table + (index * 4))! !
!LargeIntegersPlugin class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/26/2011 14:35'!
simulatorClass
^LargeIntegersSimulator! !
!LargeIntegersSimulator methodsFor: 'oop functions' stamp: 'crl 3/2/2012 12:57'!
digitDivLarge: firstInteger with: secondInteger negative: neg
"Does not normalize."
"Division by zero has to be checked in caller."
| firstLen secondLen resultClass l d div rem quo result |
firstLen _ self byteSizeOfBytes: firstInteger.
secondLen _ self byteSizeOfBytes: secondInteger.
neg
ifTrue: [resultClass _ interpreterProxy classLargeNegativeInteger]
ifFalse: [resultClass _ interpreterProxy classLargePositiveInteger].
l _ firstLen - secondLen + 1.
l <= 0
ifTrue:
[self remapOop: firstInteger in: [result _ interpreterProxy instantiateClass: interpreterProxy classArray indexableSize: 2].
interpreterProxy
stObject: result at: 1 put: (0 asOop: SmallInteger);
stObject: result at: 2 put: firstInteger.
^ result].
"set rem and div to copies of firstInteger and secondInteger, respectively.
However,
to facilitate use of Knuth's algorithm, multiply rem and div by 2 (that
is, shift)
until the high byte of div is >=128"
d _ 8 - (self cHighBit: (self unsafeByteOf: secondInteger at: secondLen)).
self remapOop: firstInteger
in:
[div _ self bytes: secondInteger Lshift: d.
div _ self bytesOrInt: div growTo: (self digitLength: div)
+ 1].
self remapOop: div
in:
[rem _ self bytes: firstInteger Lshift: d.
(self digitLength: rem)
= firstLen ifTrue: [rem _ self bytesOrInt: rem growTo: firstLen + 1]].
self remapOop: #(div rem ) in: [quo _ interpreterProxy instantiateClass: resultClass indexableSize: l].
self
cCoreDigitDivDiv: (interpreterProxy firstIndexableField: div)
len: (self digitLength: div)
rem: (interpreterProxy firstIndexableField: rem)
len: (self digitLength: rem)
quo: (interpreterProxy firstIndexableField: quo)
len: (self digitLength: quo).
self remapOop: #(quo ) in: [rem _ self
bytes: rem
Rshift: d
bytes: 0
lookfirst: (self digitLength: div)
- 1].
"^ Array with: quo with: rem"
self remapOop: #(quo rem ) in: [result _ interpreterProxy instantiateClass: interpreterProxy classArray indexableSize: 2].
interpreterProxy
stObject: result at: 1 put: quo;
stObject: result at: 2 put: rem.
^ result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:17'!
primDigitAdd
| sum |
sum _ self primDigitAdd: (interpreterProxy stackValue: 0).
interpreterProxy
pop: 2;
push: sum! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:17'!
primDigitBitAnd
| result |
result _ self primDigitBitAnd: (interpreterProxy stackValue: 0).
interpreterProxy
pop: 2;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:17'!
primDigitBitShiftMagnitude
| result |
result _ self primDigitBitShiftMagnitude: (interpreterProxy stackIntegerValue: 0).
interpreterProxy
pop: 2;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:18'!
primDigitCompare
| result |
result _ self primDigitCompare: (interpreterProxy stackValue: 0).
interpreterProxy
pop: 2;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:18'!
primDigitDivNegative
| result |
result _ (
self
primDigitDiv: (interpreterProxy stackValue: 1)
negative: (interpreterProxy stackValue: 0)).
interpreterProxy
pop: 3;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 11:58'!
primDigitMultiplyNegative
| result |
result _ (
self
primDigitMultiply: (interpreterProxy stackValue: 1)
negative: (interpreterProxy stackValue: 0)).
interpreterProxy
pop: 3;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 01:18'!
primDigitSubtract
| difference |
difference _ self primDigitSubtract: (interpreterProxy stackValue: 0).
interpreterProxy
pop: 2;
push: difference! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 11:58'!
primNormalizeNegative
| result |
result _ super primNormalizeNegative.
interpreterProxy
pop: 1;
push: result! !
!LargeIntegersSimulator methodsFor: 'Integer primitives' stamp: 'crl 2/12/2006 11:58'!
primNormalizePositive
| result |
result _ super primNormalizePositive.
interpreterProxy
pop: 1;
push: result! !
!ObjectMemory methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 15:47'!
classArray
^self splObj: ClassArray! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/26/2011 18:03'!
printNameOfClass: classOop count: cnt
"Details: The count argument is used to avoid a possible infinite recursion if classOop is a corrupted object."
cnt <= 0 ifTrue: [ ^ self print: 'bad class' ].
(self sizeBitsOf: classOop) = (7 * self bytesPerWord) "(Metaclass instSize+1 * 4)"
ifTrue: [self printNameOfClass: (self fetchPointer: 5 "thisClass" ofObject: classOop)
count: cnt - 1.
self print: ' class']
ifFalse: [
self printStringOf: (self fetchPointer: 0 ofObject: (self fetchPointer: 6 "name" ofObject: classOop))]! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:27'!
rawLengthOf: oop
"Return the number of indexable bytes or words in the given object. Assume the argument is not an integer. For a CompiledMethod, the size of the method header (in bytes) should be subtracted from the result."
| header |
header := self baseHeader: oop.
^ self rawLengthOf: oop baseHeader: header format: ((header >> 8) bitAnd: 16rF)! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:28'!
rawLengthOf: oop baseHeader: hdr format: fmt
"Return the number of indexable bytes or words in the given object. Assume the given oop is not an integer."
| sz |
(hdr bitAnd: TypeMask) = HeaderTypeSizeAndClass
ifTrue: [ sz := (self sizeHeader: oop) bitAnd: self allButTypeMask ]
ifFalse: [ sz := hdr bitAnd: self sizeMask ].
^sz! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/23/2011 12:14'!
okayOop: signedOop
"Verify that the given oop is legitimate. Check address, header, and size but not class."
| sz type fmt unusedBit oop |
oop := self cCoerce: signedOop to: 'usqInt'.
"address and size checks"
(self isIntegerObject: oop) ifTrue: [ ^true ].
((oop > 0) & (oop < endOfMemory))
ifFalse: [ self error: 'oop is not a valid address' ].
((oop \\ self bytesPerWord) = 0)
ifFalse: [ self error: 'oop is not a word-aligned address' ].
sz := self sizeBitsOf: oop.
(oop + sz) < endOfMemory
ifFalse: [ self error: 'oop size would make it extend beyond the end of memory' ].
"header type checks"
type := self headerType: oop.
type = HeaderTypeFree
ifTrue: [ self error: 'oop is a free chunk, not an object' ].
type = HeaderTypeShort ifTrue: [
(((self baseHeader: oop) >> 12) bitAnd: 16r1F) = 0
ifTrue: [ self error: 'cannot have zero compact class field in a short header' ].
].
type = HeaderTypeClass ifTrue: [
((oop >= self bytesPerWord) and: [(self headerType: oop - self bytesPerWord) = type])
ifFalse: [ self error: 'class header word has wrong type' ].
].
type = HeaderTypeSizeAndClass ifTrue: [
((oop >= (self bytesPerWord * 2)) and:
[(self headerType: oop - (self bytesPerWord * 2)) = type and:
[(self headerType: oop - self bytesPerWord) = type]])
ifFalse: [ self error: 'class header word has wrong type' ].
].
"format check"
fmt := self formatOf: oop.
(fmt = 7)
ifTrue: [ self error: 'oop has an unknown format type' ].
"mark and root bit checks"
unusedBit := 16r20000000.
self bytesPerWord = 8
ifTrue:
[unusedBit := unusedBit << 16.
unusedBit := unusedBit << 16].
((self longAt: oop) bitAnd: unusedBit) = 0
ifFalse: [ self error: 'unused header bit 30 is set; should be zero' ].
"xxx
((self longAt: oop) bitAnd: MarkBit) = 0
ifFalse: [ self error: 'mark bit should not be set except during GC' ].
xxx"
(((self longAt: oop) bitAnd: self rootBit) = 1 and:
[oop >= youngStart])
ifTrue: [ self error: 'root bit is set in a young object' ].
^true
! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'ikp (auto pragmas dtl 2010-09-26) 3/26/2005 21:06'!
oopHasOkayClass: signedOop
"Attempt to verify that the given oop has a reasonable behavior. The class must be a valid, non-integer oop and must not be nilObj. It must be a pointers object with three or more fields. Finally, the instance specification field of the behavior must match that of the instance."
| oop oopClass formatMask behaviorFormatBits oopFormatBits |
oop := self cCoerce: signedOop to: 'usqInt'.
self okayOop: oop.
oopClass := self cCoerce: (self fetchClassOf: oop) to: 'usqInt'.
(self isIntegerObject: oopClass)
ifTrue: [ self error: 'a SmallInteger is not a valid class or behavior' ].
self okayOop: oopClass.
((self isPointers: oopClass) and: [(self lengthOf: oopClass) >= 3])
ifFalse: [ self error: 'a class (behavior) must be a pointers object of size >= 3' ].
(self isBytes: oop)
ifTrue: [ formatMask := 16rC00 ] "ignore extra bytes size bits"
ifFalse: [ formatMask := 16rF00 ].
behaviorFormatBits := (self formatOfClass: oopClass) bitAnd: formatMask.
oopFormatBits := (self baseHeader: oop) bitAnd: formatMask.
behaviorFormatBits = oopFormatBits
ifFalse: [ self error: 'object and its class (behavior) formats differ' ].
^true! !
!Interpreter methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/22/2011 07:48'!
classNameOf: aClass Is: className
"Check if aClass's name is className"
| srcName name length |
(self lengthOf: aClass) <= 6 ifTrue: [^ false].
"Not a class but might be behavior"
name := self fetchPointer: 0 ofObject: (self fetchPointer: 6 ofObject: aClass).
(self isBytes: name) ifFalse: [^ false].
length := self stSizeOf: name.
srcName := self cCoerce: (self arrayValueOf: name) to: 'char *'.
0 to: length - 1 do: [:i | (srcName at: i) = (className at: i) ifFalse: [^ false]].
"Check if className really ends at this point"
^ (className at: length) = 0! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/17/2012 18:14'!
getSystemAttribute: attributeID
"Optional. Answer the string for the system attribute with the given
integer ID. Answer nil if the given attribute is not defined on this
platform. On platforms that support invoking programs from command
lines (e.g., Unix), this mechanism can be used to pass command line
arguments to programs written in Squeak.
By convention, the first command line argument that is not a VM
configuration option is considered a 'document' to be filed in. Such a
document can add methods and classes, can contain a serialized object,
can include code to be executed, or any combination of these.
Currently defined attributes include:
-1000...-1 - command line arguments that specify VM options
0 - the full path name for currently executing VM
(or, on some platforms, just the path name of the VM's directory)
1 - full path name of this image
2 - a Squeak document to open, if any
3...1000 - command line arguments for Squeak programs
1001 - this platform's operating system
1002 - operating system version
1003 - this platform's processor type
1004 - vm version"
^ nil! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/24/2012 10:15'!
imagePath
"Answer the full path name for the current image."
| path primPath |
path := (String new: 32) writableStream.
primPath := self primImageName.
path nextPutAll: 'file://'.
(primPath first = $/) ifFalse: [path nextPut: $/].
path nextPutAll: (self primImageName copyReplaceAll: '\' with: '/').
^path contents! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/17/2012 18:14'!
platformName
"Return the name of the platform we're running on"
^self getSystemAttribute: 1001! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/24/2012 10:25'!
primAppPath
^ ''! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/17/2012 09:52'!
primImageName
"Answer the full path name for the current image."
"SmalltalkImage current imageName"
self primitiveFailed! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/17/2012 09:53'!
primVmPath
"Answer the path for the directory containing the Smalltalk virtual machine. Return the empty string if this primitive is not implemented."
"SmalltalkImage current vmPath"
^ ''! !
!Interpreter class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 8/17/2012 18:29'!
resumeMemoryNamed: memoryName usingProcessorNamed: processorName
self primitiveFailed! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 4/15/2007 11:29'!
pop: nItems
"Note: May be called by translated primitive code."
(thisContext sender receiver class == Flow) ifTrue: [
Transcript
nextPut: $.;
endEntry].
super pop: nItems! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 4/15/2007 10:40'!
nameOfClass: classOop
^(
((self sizeBitsOf: classOop) = (Metaclass instSize + 1 * 4))
ifTrue: [
(
self nameOfClass: (
"thisClass"
self fetchPointer: 5 ofObject: classOop)
)
, ' class']
ifFalse: [
[
| name |
name := self fetchPointer: 6 ofObject: classOop.
self stringOf: (
((self fetchClassOf: name) = (self fetchClassOf: (self fetchPointer: 20 ofObject: specialObjectsOop)))
ifTrue: [
"The name is a Symbol."
name]
ifFalse: [
"The name is a ReadOnlyVariableBinding."
self fetchPointer: 0 ofObject: name]
)
]
on: Error
do: [:exception |
(
self nameOfClass: (
"thisClass"
self fetchPointer: 5 ofObject: classOop)
)
, ' class']]
)
asSymbol! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 10:53'!
primitiveGetAttribute
"Fetch the system attribute with the given integer ID. The result is a string, which will be empty if the attribute is not defined."
| attr s attribute |
attr := self stackIntegerValue: 0.
self successful ifTrue: [
attribute := SmalltalkImage current getSystemAttribute: attr.
attribute ifNil: [ ^self primitiveFail ].
s := self instantiateClass: (self splObj: ClassString) indexableSize: attribute size.
1 to: attribute size do: [ :i |
self storeByte: i-1 ofObject: s withValue: (attribute at: i) asciiValue].
self pop: 2. "rcvr, attr"
self push: s].
! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 3/1/2012 01:37'!
classNameOf: aClass Is: className
"Check if aClass' name is className"
| name |
(self lengthOf: aClass) <= 6 ifTrue:[^false]. "Not a class but maybe behavior"
name := self fetchPointer: 6 ofObject: aClass.
(self isBytes: name) ifFalse:[^false].
^ className = (self stringOf: name).
! !
!InterpreterSimulator methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 5/25/2011 15:56'!
successful
^primFailCode == 0! !
!InterpreterSimulator class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 4/15/2007 00:46'!
openOn: pathname
^self new openOn: pathname! !
!InterpreterSimulator class methodsFor: '*System-Spoon-Virtual Machine Support' stamp: 'crl 4/15/2007 00:46'!
simulate: snapshotPathString
"Simulate the snapshot corresponding to snapshotPathString."
^(self openOn: snapshotPathString) test! !
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/pictures/welcome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/pictures/welcome.png
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/pictures/workspace.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/pictures/workspace.png
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/the Spoon book.pages:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/the Spoon book.pages
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/the Spoon book.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/documentation/book/the Spoon book.pdf
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleDocumentTypes
8 |
9 |
10 | CFBundleTypeExtensions
11 |
12 | image
13 |
14 | CFBundleTypeIconFile
15 | Pharo.icns
16 | CFBundleTypeName
17 | Pharo Image File
18 | CFBundleTypeOSTypes
19 |
20 | STim
21 |
22 | CFBundleTypeRole
23 | Editor
24 |
25 |
26 | CFBundleTypeExtensions
27 |
28 | sources
29 |
30 | CFBundleTypeIconFile
31 | SqueakSources.icns
32 | CFBundleTypeName
33 | Squeak Sources File
34 | CFBundleTypeOSTypes
35 |
36 | STso
37 |
38 | CFBundleTypeRole
39 | Editor
40 |
41 |
42 | CFBundleTypeExtensions
43 |
44 | changes
45 |
46 | CFBundleTypeIconFile
47 | SqueakChanges.icns
48 | CFBundleTypeName
49 | Squeak Changes File
50 | CFBundleTypeOSTypes
51 |
52 | STch
53 |
54 | CFBundleTypeRole
55 | Editor
56 |
57 |
58 | CFBundleTypeExtensions
59 |
60 | sobj
61 |
62 | CFBundleTypeIconFile
63 | SqueakScript.icns
64 | CFBundleTypeName
65 | Squeak Script File
66 | CFBundleTypeOSTypes
67 |
68 | SOBJ
69 |
70 | CFBundleTypeRole
71 | Editor
72 |
73 |
74 | CFBundleTypeExtensions
75 |
76 | pr
77 |
78 | CFBundleTypeIconFile
79 | SqueakProject.icns
80 | CFBundleTypeName
81 | Squeak Project File
82 | CFBundleTypeOSTypes
83 |
84 | STpr
85 |
86 | CFBundleTypeRole
87 | Editor
88 |
89 |
90 | CFBundleTypeName
91 | JPEG
92 | CFBundleTypeOSTypes
93 |
94 | JPEG
95 |
96 | CFBundleTypeRole
97 | Viewer
98 |
99 |
100 | CFBundleTypeName
101 | TEXT
102 | CFBundleTypeOSTypes
103 |
104 | TEXT
105 |
106 | CFBundleTypeRole
107 | Viewer
108 |
109 |
110 | CFBundleTypeName
111 | ttro
112 | CFBundleTypeOSTypes
113 |
114 | ttro
115 |
116 | CFBundleTypeRole
117 | Viewer
118 |
119 |
120 | CFBundleTypeName
121 | HTML
122 | CFBundleTypeOSTypes
123 |
124 | HTML
125 |
126 | CFBundleTypeRole
127 | Viewer
128 |
129 |
130 | CFBundleTypeName
131 | RTF
132 | CFBundleTypeOSTypes
133 |
134 | RTF
135 |
136 | CFBundleTypeRole
137 | Viewer
138 |
139 |
140 | CFBundleTypeName
141 | TIFF
142 | CFBundleTypeOSTypes
143 |
144 | TIFF
145 |
146 | CFBundleTypeRole
147 | Viewer
148 |
149 |
150 | CFBundleTypeName
151 | PICT
152 | CFBundleTypeOSTypes
153 |
154 | PICT
155 |
156 | CFBundleTypeRole
157 | Viewer
158 |
159 |
160 | CFBundleTypeName
161 | URL
162 | CFBundleTypeOSTypes
163 |
164 | URL
165 |
166 | CFBundleTypeRole
167 | Viewer
168 |
169 |
170 | CFBundleTypeName
171 | ZIP
172 | CFBundleTypeOSTypes
173 |
174 | ZIP
175 |
176 | CFBundleTypeRole
177 | Viewer
178 |
179 |
180 | CFBundleTypeName
181 | zip
182 | CFBundleTypeOSTypes
183 |
184 | zip
185 |
186 | CFBundleTypeRole
187 | Viewer
188 |
189 |
190 | CFBundleTypeName
191 | BINA
192 | CFBundleTypeOSTypes
193 |
194 | BINA
195 |
196 | CFBundleTypeRole
197 | Viewer
198 |
199 |
200 | CFBundleTypeName
201 | GIFf
202 | CFBundleTypeOSTypes
203 |
204 | GIFf
205 |
206 | CFBundleTypeRole
207 | Viewer
208 |
209 |
210 | CFBundleTypeName
211 | PNGf
212 | CFBundleTypeOSTypes
213 |
214 | PNGf
215 |
216 | CFBundleTypeRole
217 | Viewer
218 |
219 |
220 | CFBundleTypeName
221 | MP3
222 | CFBundleTypeOSTypes
223 |
224 | MP3
225 |
226 | CFBundleTypeRole
227 | Viewer
228 |
229 |
230 | CFBundleTypeName
231 | MP3!
232 | CFBundleTypeOSTypes
233 |
234 | MP3!
235 |
236 | CFBundleTypeRole
237 | Viewer
238 |
239 |
240 | CFBundleTypeName
241 | MP3U
242 | CFBundleTypeOSTypes
243 |
244 | MP3U
245 |
246 | CFBundleTypeRole
247 | Viewer
248 |
249 |
250 | CFBundleTypeName
251 | MPEG
252 | CFBundleTypeOSTypes
253 |
254 | MPEG
255 |
256 | CFBundleTypeRole
257 | Viewer
258 |
259 |
260 | CFBundleTypeName
261 | mp3!
262 | CFBundleTypeOSTypes
263 |
264 | mp3!
265 |
266 | CFBundleTypeRole
267 | Viewer
268 |
269 |
270 | CFBundleTypeName
271 | MPG2
272 | CFBundleTypeOSTypes
273 |
274 | MPG2
275 |
276 | CFBundleTypeRole
277 | Viewer
278 |
279 |
280 | CFBundleTypeName
281 | MPG3
282 | CFBundleTypeOSTypes
283 |
284 | MPG3
285 |
286 | CFBundleTypeRole
287 | Viewer
288 |
289 |
290 | CFBundleTypeName
291 | MPG
292 | CFBundleTypeOSTypes
293 |
294 | MPG
295 |
296 | CFBundleTypeRole
297 | Viewer
298 |
299 |
300 | CFBundleTypeName
301 | Mp3
302 | CFBundleTypeOSTypes
303 |
304 | mp3
305 |
306 | CFBundleTypeRole
307 | Viewer
308 |
309 |
310 | CFBundleTypeName
311 | M3U
312 | CFBundleTypeOSTypes
313 |
314 | M3U
315 |
316 | CFBundleTypeRole
317 | Viewer
318 |
319 |
320 | CFBundleTypeName
321 | SRCS
322 | CFBundleTypeOSTypes
323 |
324 | SRCS
325 |
326 | CFBundleTypeRole
327 | Viewer
328 |
329 |
330 | CFBundleTypeName
331 | Chng
332 | CFBundleTypeOSTypes
333 |
334 | Chng
335 |
336 | CFBundleTypeRole
337 | Viewer
338 |
339 |
340 | CFBundleTypeName
341 | HPS5
342 | CFBundleTypeOSTypes
343 |
344 | HPS5
345 |
346 | CFBundleTypeRole
347 | Viewer
348 |
349 |
350 | CFBundleExecutable
351 | Pharo
352 | CFBundleGetInfoString
353 | CogVM VM 6.0-pre
354 | CFBundleIconFile
355 | Pharo.icns
356 | CFBundleIdentifier
357 | org.pharo.Pharo
358 | CFBundleInfoDictionaryVersion
359 | 3.0
360 | CFBundleName
361 | Pharo
362 | CFBundlePackageType
363 | APPL
364 | CFBundleShortVersionString
365 | Pharo 3.0
366 | CFBundleSignature
367 | FAST
368 | CFBundleVersion
369 | 21.0
370 | LSBackgroundOnly
371 |
372 | LSMinimumSystemVersion
373 |
374 | NSMainNibFile
375 | MainMenu
376 | NSPrincipalClass
377 | SqueakOSXApplication
378 | SqueakBrowserMouseCmdButton1
379 | 3
380 | SqueakBrowserMouseCmdButton2
381 | 3
382 | SqueakBrowserMouseCmdButton3
383 | 2
384 | SqueakBrowserMouseControlButton1
385 | 1
386 | SqueakBrowserMouseControlButton2
387 | 3
388 | SqueakBrowserMouseControlButton3
389 | 2
390 | SqueakBrowserMouseNoneButton1
391 | 1
392 | SqueakBrowserMouseNoneButton2
393 | 3
394 | SqueakBrowserMouseNoneButton3
395 | 2
396 | SqueakBrowserMouseOptionButton1
397 | 2
398 | SqueakBrowserMouseOptionButton2
399 | 3
400 | SqueakBrowserMouseOptionButton3
401 | 2
402 | SqueakDebug
403 | 0
404 | SqueakExplicitWindowOpenNeeded
405 |
406 | SqueakImageName
407 | Pharo3.0.image
408 | SqueakMaxHeapSize
409 | 536870912
410 | SqueakMouseCmdButton1
411 | 3
412 | SqueakMouseCmdButton2
413 | 3
414 | SqueakMouseCmdButton3
415 | 2
416 | SqueakMouseControlButton1
417 | 1
418 | SqueakMouseControlButton2
419 | 3
420 | SqueakMouseControlButton3
421 | 2
422 | SqueakMouseNoneButton1
423 | 1
424 | SqueakMouseNoneButton2
425 | 3
426 | SqueakMouseNoneButton3
427 | 2
428 | SqueakMouseOptionButton1
429 | 2
430 | SqueakMouseOptionButton2
431 | 3
432 | SqueakMouseOptionButton3
433 | 2
434 | SqueakPluginsBuiltInOrLocalOnly
435 |
436 | SqueakQuitOnQuitAppleEvent
437 |
438 | SqueakResourceDirectory
439 |
440 | SqueakTrustedDirectory
441 | /foobar/tooBar/forSqueak/bogus/
442 | SqueakUIFlushPrimaryDeferNMilliseconds
443 | 20
444 | SqueakUnTrustedDirectory
445 | ~/Library/Preferences/Pharo/Internet/My Pharo/
446 | SqueakUseFileMappedMMAP
447 |
448 | SqueakUIFadeForFullScreenInSeconds
449 | 0.5
450 | UTExportedTypeDeclarations
451 |
452 |
453 | UTTypeConformsTo
454 |
455 | public.data
456 |
457 | UTTypeDescription
458 | Pharo Image File
459 | UTTypeIdentifier
460 | org.pharo.image
461 | UTTypeTagSpecification
462 |
463 | com.apple.ostype
464 | STim
465 | public.filename-extension
466 |
467 | image
468 |
469 | public.mime-type
470 | application/pharo-image
471 |
472 |
473 |
474 | UTTypeConformsTo
475 |
476 | public.utf8-plain-text
477 |
478 | UTTypeDescription
479 | Pharo Sources File
480 | UTTypeIdentifier
481 | org.pharo.sources
482 | UTTypeTagSpecification
483 |
484 | com.apple.ostype
485 | STso
486 | public.filename-extension
487 |
488 | sources
489 |
490 | public.mime-type
491 | application/pharo-sources
492 |
493 |
494 |
495 | UTTypeConformsTo
496 |
497 | public.utf8-plain-text
498 |
499 | UTTypeDescription
500 | Pharo Changes File
501 | UTTypeIdentifier
502 | org.pharo.changes
503 | UTTypeTagSpecification
504 |
505 | com.apple.ostype
506 | STch
507 | public.filename-extension
508 |
509 | changes
510 |
511 | public.mime-type
512 | application/pharo-changes
513 |
514 |
515 |
516 | UTTypeConformsTo
517 |
518 | public.data
519 |
520 | UTTypeDescription
521 | Pharo Script File
522 | UTTypeIdentifier
523 | org.pharo.script
524 | UTTypeTagSpecification
525 |
526 | com.apple.ostype
527 | SOBJ
528 | public.filename-extension
529 |
530 | sobj
531 |
532 | public.mime-type
533 | application/squeak-script
534 |
535 |
536 |
537 |
538 |
539 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Pharo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Pharo
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libAsynchFilePlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libAsynchFilePlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libB3DAcceleratorPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libB3DAcceleratorPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libCroquetPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libCroquetPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libFT2Plugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libFT2Plugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libFloatMathPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libFloatMathPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libIA32ABI.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libIA32ABI.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJPEGReadWriter2Plugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJPEGReadWriter2Plugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJPEGReaderPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJPEGReaderPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJoystickTabletPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libJoystickTabletPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libLocalePlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libLocalePlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libMIDIPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libMIDIPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libMpeg3Plugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libMpeg3Plugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libObjectiveCPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libObjectiveCPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libQuicktimePlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libQuicktimePlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libRePlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libRePlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSerialPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSerialPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSqueakFFIPrims.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSqueakFFIPrims.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSqueakSSL.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libSqueakSSL.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libTestOSAPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libTestOSAPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libUUIDPlugin.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libUUIDPlugin.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libcairo.2.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libcairo.2.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libfreetype.6.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libfreetype.6.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libgit2.0.20.0.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libgit2.0.20.0.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libpixman-1.0.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libpixman-1.0.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libpng12.0.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libpng12.0.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libssh2.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/MacOS/Plugins/libssh2.dylib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/English.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
3 | "SqueakSelectImagePanePrompt" = "Open...";
4 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/English.lproj/MainMenu.nib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/English.lproj/MainMenu.nib
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.ico
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo.png
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo3.0.image:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Pharo3.0.image
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoChanges.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoChanges.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoImage.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoImage.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoSources.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/PharoSources.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/Pharo3.0.app/Contents/Resources/Squeak VM.r:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | resource 'STR ' (1001, purgeable) {
4 | "Squeak, a pure object oriented programming environment "
5 | "based on Smalltalk-80 and work done at Apple and Disney"
6 | };
7 |
8 | resource 'open' (128)
9 | {
10 | 'FAST', { '????','****' , 'STim', 'STch', 'SOBJ', 'TEXT', 'HTML', 'RTF ', 'ttro', 'JPEG', 'TIFF', 'PICT',
11 | 'URL ', 'ZIP ', 'zip ', 'BINA', 'GIFf', 'PNGf', 'MP3 ', 'MP3!', 'MP3U', 'MPEG', 'mp3!', 'MPG2', 'MPG3',
12 | 'MPG ', 'Mp3 ', 'M3U ', 'SRCS', 'Chng', 'HPS5' }
13 | };
14 |
15 | resource 'kind' (1000)
16 | {
17 | 'FAST',
18 | verUS,
19 | {
20 | 'apnm', "Squeak",
21 | 'STim', "Squeak Image File",
22 | 'STch', "Squeak Changes File",
23 | 'SOBJ', "Squeak Script File"
24 | }
25 | };
26 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/context.config:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/Resources/context/processor/context.config
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/Resources/context/workspaces/remote messaging:
--------------------------------------------------------------------------------
1 | "This workspace is for demoing remote messaging in Context 4a1 and later."
"Start a remote-messaging server."
RemoteMessagingServer new inspect
"Connect to the history memory. In the inspector we just opened, notice the description the server gives for itself, summarizing the clients it's serving."
MemoryControl
recordHistoryInMemoryWithID: (UUID fromString: '946BE974-48B7-4D11-B209-6355B3E49722')
applyingName: 'history'
"Test connectivity with the history memory."
Transcript cr; show: (MemoryControl memoryNamed: 'history') ping
"Get the class base IDs from the history memory."
(MemoryControl memoryNamed: 'history') getClassBaseIDs
"Browse remote classes in the history memory."
OtherBrowser openOn: (MemoryControl memoryNamed: 'history')
"Browser the processes in the history memory."
OtherProcessBrowser openOn: (MemoryControl memoryNamed: 'history')
"Snapshot the history memory."
(MemoryControl memoryNamed: 'history') snapshot
(MemoryControl counterpartIn: (MemoryControl memoryNamed: 'history')) initialize
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeDirectory:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeDirectory
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeRequirements:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeRequirements
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeResources:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | files
6 |
7 | Resources/.lldbinit
8 |
9 | ovzOej7CFnpkEj52+u/wzL5mqlg=
10 |
11 | Resources/Flow.bundle/Contents/Info.plist
12 |
13 | 0u8jekzhvbJ8liO1/CT1Gn8WkGg=
14 |
15 | Resources/Flow.bundle/Contents/MacOS/Flow
16 |
17 | MqYaxMdYaLmBTz5M/zCkqaRTtgc=
18 |
19 | Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings
20 |
21 | hash
22 |
23 | cVCIS//7KA0JrdckIniEGWAQleU=
24 |
25 | optional
26 |
27 |
28 | Resources/Flow.bundle/Contents/Resources/libportmidi.dylib
29 |
30 | XiCiKm+3TW0OBLk8fHJE8RI5JLE=
31 |
32 | Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz
33 |
34 | lIyvLCZO+KRGAL+NfxIBMa9erNI=
35 |
36 | Resources/context/changes/memory/2-Context-crl.1.mcz
37 |
38 | sM5wBsUSw+7Epuu18tBLAYe7yxY=
39 |
40 | Resources/context/changes/processor/1 of 4 - remote messaging.cs
41 |
42 | 7qrGVJbUKKwozyinQQ2d28tk5nc=
43 |
44 | Resources/context/changes/processor/2 of 4 - unused-method removal.cs
45 |
46 | cMPJ5qPrDH9/MkFHQOEszkFnIRk=
47 |
48 | Resources/context/changes/processor/3 of 4 - active imprinting.cs
49 |
50 | Db4qZcYf2ME6dldij7OVOEI7AlI=
51 |
52 | Resources/context/changes/processor/4 of 4 - collateral improvements.cs
53 |
54 | Of3R3JfCKnuxymnyKrhr+TB3ZC0=
55 |
56 | Resources/context/documentation/book/pictures/welcome.png
57 |
58 | Qi0n6Wm4tS4U5fHEY8tsO5dz9iM=
59 |
60 | Resources/context/documentation/book/pictures/workspace.png
61 |
62 | I8K3IsNweZTg+vI9t4SmbFmcz1M=
63 |
64 | Resources/context/documentation/book/the Spoon book.pages
65 |
66 | aZdY/Ew0tOsRKcwz6ZnC5u2F+H8=
67 |
68 | Resources/context/documentation/book/the Spoon book.pdf
69 |
70 | SMNda/QXHpGDdeczb0Tg8c2kpCk=
71 |
72 | Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.changes
73 |
74 | /EN31X4cPL7DUIDgiLuyGB6UpdE=
75 |
76 | Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.image
77 |
78 | G3LftADOI9as/p6HV/+Zs1vsBCQ=
79 |
80 | Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722.image
81 |
82 | DXvCfcNt8qEJeD0xPlgdgVmMWKM=
83 |
84 | Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/SqueakV3.sources
85 |
86 | y7Z6EjIduId10U944oARF5m976g=
87 |
88 | Resources/context/processor/context.config
89 |
90 | kouquLHq1KhvECbIg+vCQcF7Kx8=
91 |
92 |
93 | files2
94 |
95 | Library/QuickLook/SqueakQL.qlgenerator/Contents/Info.plist
96 |
97 | PmsnIcWdpzBhR8Dha7fncjG/k60=
98 |
99 | Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL
100 |
101 | BdgwRQcgOwyQuaxnFwFpvnVZD7o=
102 |
103 | Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL.sig
104 |
105 | /j5JqPatciWZj/ACBbteX0UdTjk=
106 |
107 | Library/QuickLook/SqueakQL.qlgenerator/Contents/Resources/English.lproj/InfoPlist.strings
108 |
109 | He3NcxiQ02JfuCLq6QVu82vqCWQ=
110 |
111 | Linux/bin/spoon
112 |
113 | PXvpRHvHKla+FHb9D5U71Nhe1fQ=
114 |
115 | Linux/bin/spoon.sh
116 |
117 | 43XIfPBwvUXpqAdJ+7JdAxvJ9ZQ=
118 |
119 | Linux/lib/spoon/4.4.7-2357/activeFilesystem.changes
120 |
121 | HMGZlsfsnGqdAz2H1SPDbILbkxI=
122 |
123 | Linux/lib/spoon/4.4.7-2357/activeFilesystem.image
124 |
125 | rymVsOj4E3kkXwskKWUSj42Ev0E=
126 |
127 | Linux/lib/spoon/4.4.7-2357/so.AioPlugin
128 |
129 | qWVbxX7yrgtzA0TDYMmAO3yjHdk=
130 |
131 | Linux/lib/spoon/4.4.7-2357/so.ClipboardExtendedPlugin
132 |
133 | 1mrretigTHFuVUpKDqx4n7Akc0w=
134 |
135 | Linux/lib/spoon/4.4.7-2357/so.FileCopyPlugin
136 |
137 | Hmo2zrhopEHto5qeRQTDL2GLwOA=
138 |
139 | Linux/lib/spoon/4.4.7-2357/so.Flow
140 |
141 | LR79FOsetjMK2JT0n6jr5WxmvFI=
142 |
143 | Linux/lib/spoon/4.4.7-2357/so.HostWindowPlugin
144 |
145 | HQwE01mcgCAgCNqPTpW7Qcf7Zxo=
146 |
147 | Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin
148 |
149 | 6SrZ1p1lY5p/h3p01yiOOGf6y1Q=
150 |
151 | Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin2
152 |
153 | +Cl0UsZIAvvgncnzM7PEHBnFN4E=
154 |
155 | Linux/lib/spoon/4.4.7-2357/so.MIDIPlugin
156 |
157 | VbWGQ9cRqw5YFlwjzmaOLJTyx6o=
158 |
159 | Linux/lib/spoon/4.4.7-2357/so.Mpeg3Plugin
160 |
161 | x+oMigpnf1YVtbXX1xCpKEaTqPE=
162 |
163 | Linux/lib/spoon/4.4.7-2357/so.Squeak3D
164 |
165 | 2BUTrwhktgOG/tqPPOubVJW+I24=
166 |
167 | Linux/lib/spoon/4.4.7-2357/so.SqueakFFIPrims
168 |
169 | G5dDYyCEM4qpJj6chnU3B2c/5R8=
170 |
171 | Linux/lib/spoon/4.4.7-2357/so.UnixOSProcessPlugin
172 |
173 | 5lExU40+7vLFuU75cN6egFYY9GY=
174 |
175 | Linux/lib/spoon/4.4.7-2357/so.XDisplayControlPlugin
176 |
177 | XPl0yd24QP3mDOfcqKqrossvEI8=
178 |
179 | Linux/lib/spoon/4.4.7-2357/so.vm-display-X11
180 |
181 | 09w8SeAModNbBXADgzqk0nDS2ds=
182 |
183 | Linux/lib/spoon/4.4.7-2357/so.vm-display-custom
184 |
185 | ZZoBsHKtklc2YD/VSh4oe8iTibs=
186 |
187 | Linux/lib/spoon/4.4.7-2357/so.vm-display-fbdev
188 |
189 | 3ik/tNqWIWnltSqX1K8uJ4AWN00=
190 |
191 | Linux/lib/spoon/4.4.7-2357/so.vm-display-null
192 |
193 | S8HGjCpkLO1PGNJyUIzqDTW52kk=
194 |
195 | Linux/lib/spoon/4.4.7-2357/so.vm-sound-ALSA
196 |
197 | H8X5AsapDWhqxQp22DznRYG+YtQ=
198 |
199 | Linux/lib/spoon/4.4.7-2357/so.vm-sound-OSS
200 |
201 | rjkKoKPZM0g0VwiykQE1uUZgCJM=
202 |
203 | Linux/lib/spoon/4.4.7-2357/so.vm-sound-custom
204 |
205 | NMDRPEFVW+p8wjo575bdt4a6kjE=
206 |
207 | Linux/lib/spoon/4.4.7-2357/so.vm-sound-null
208 |
209 | M9urYEL+En9FN9nOGOmoiMmQjGU=
210 |
211 | Linux/lib/spoon/4.4.7-2357/spoonvm
212 |
213 | uk5hUwkNQz7/qI0y7wvstw9nfJ0=
214 |
215 | Linux/share/man/man1/squeak.1
216 |
217 | Iq7rhBF22BqfvgrBqV56qOzs3Hk=
218 |
219 | MacOS/Spoon VM Opt
220 |
221 | cdhash
222 |
223 | xaiehWzRoMGYy6UlimGp3CQE9PU=
224 |
225 | requirement
226 | identifier "Spoon VM Opt" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = RJ7UR445N4
227 |
228 | Resources/.lldbinit
229 |
230 | ovzOej7CFnpkEj52+u/wzL5mqlg=
231 |
232 | Resources/Flow.bundle/Contents/Info.plist
233 |
234 | 0u8jekzhvbJ8liO1/CT1Gn8WkGg=
235 |
236 | Resources/Flow.bundle/Contents/MacOS/Flow
237 |
238 | MqYaxMdYaLmBTz5M/zCkqaRTtgc=
239 |
240 | Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings
241 |
242 | hash
243 |
244 | cVCIS//7KA0JrdckIniEGWAQleU=
245 |
246 | optional
247 |
248 |
249 | Resources/Flow.bundle/Contents/Resources/libportmidi.dylib
250 |
251 | XiCiKm+3TW0OBLk8fHJE8RI5JLE=
252 |
253 | Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz
254 |
255 | lIyvLCZO+KRGAL+NfxIBMa9erNI=
256 |
257 | Resources/context/changes/memory/2-Context-crl.1.mcz
258 |
259 | sM5wBsUSw+7Epuu18tBLAYe7yxY=
260 |
261 | Resources/context/changes/processor/1 of 4 - remote messaging.cs
262 |
263 | 7qrGVJbUKKwozyinQQ2d28tk5nc=
264 |
265 | Resources/context/changes/processor/2 of 4 - unused-method removal.cs
266 |
267 | cMPJ5qPrDH9/MkFHQOEszkFnIRk=
268 |
269 | Resources/context/changes/processor/3 of 4 - active imprinting.cs
270 |
271 | Db4qZcYf2ME6dldij7OVOEI7AlI=
272 |
273 | Resources/context/changes/processor/4 of 4 - collateral improvements.cs
274 |
275 | Of3R3JfCKnuxymnyKrhr+TB3ZC0=
276 |
277 | Resources/context/documentation/book/pictures/welcome.png
278 |
279 | Qi0n6Wm4tS4U5fHEY8tsO5dz9iM=
280 |
281 | Resources/context/documentation/book/pictures/workspace.png
282 |
283 | I8K3IsNweZTg+vI9t4SmbFmcz1M=
284 |
285 | Resources/context/documentation/book/the Spoon book.pages
286 |
287 | aZdY/Ew0tOsRKcwz6ZnC5u2F+H8=
288 |
289 | Resources/context/documentation/book/the Spoon book.pdf
290 |
291 | SMNda/QXHpGDdeczb0Tg8c2kpCk=
292 |
293 | Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.changes
294 |
295 | /EN31X4cPL7DUIDgiLuyGB6UpdE=
296 |
297 | Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.image
298 |
299 | G3LftADOI9as/p6HV/+Zs1vsBCQ=
300 |
301 | Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722.image
302 |
303 | DXvCfcNt8qEJeD0xPlgdgVmMWKM=
304 |
305 | Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/SqueakV3.sources
306 |
307 | y7Z6EjIduId10U944oARF5m976g=
308 |
309 | Resources/context/processor/context.config
310 |
311 | kouquLHq1KhvECbIg+vCQcF7Kx8=
312 |
313 | win32/5/flow.dll
314 |
315 | ohiR0mab6fUBHeB6YVEHu9gcQ1c=
316 |
317 | win32/5/spoon.exe
318 |
319 | sQFnIlaglfREgtwATGu6N5x3hlc=
320 |
321 | win32/5/spoon.ini
322 |
323 | sFc4N9Ov51x9OMvCqbOrYR7pkqo=
324 |
325 | win32/8/flow.dll
326 |
327 | vpHXqKW0emjZ2UTlU6s+7Cu8V0Y=
328 |
329 | win32/8/spoon.exe
330 |
331 | 7z0VOPSdbZLSHszEVWWpdhvJA+4=
332 |
333 | win32/FT2Plugin.dll
334 |
335 | I8+YVLxkNGaVJY6U95/LsaF2I00=
336 |
337 | win32/SqueakFFIPrims.dll
338 |
339 | LmKt+HGgImzB+C5z3yfa3Qdu68s=
340 |
341 | win32/SqueakSSL.dll
342 |
343 | ANiVuoTjSrNJhgT1BaCEx6TP16M=
344 |
345 | win32/SqueakV3.sources
346 |
347 | y7Z6EjIduId10U944oARF5m976g=
348 |
349 | win32/flow.dll
350 |
351 | aU1UOigHRJociq1kaaxKKhEsOGc=
352 |
353 | win32/msvcr100d.dll
354 |
355 | aFKyxZKzeU2hFNasXqnQgzF79a8=
356 |
357 | win32/msvcr120d.dll
358 |
359 | AsWzQs4wV+yOUos3ELs4AePunas=
360 |
361 | win32/portforward.exe
362 |
363 | 6PyzsCJAynpn/J5nJFvfsdDM0U8=
364 |
365 | win32/splash.bmp
366 |
367 | Z1pqJVW+i+rjyL1SHfVLHAEsjW4=
368 |
369 | win32/spoon.exe
370 |
371 | sQFnIlaglfREgtwATGu6N5x3hlc=
372 |
373 | win32/spoon.ini
374 |
375 | j5Vol+ANBZp4iACugsXQbnoVwi8=
376 |
377 |
378 | rules
379 |
380 | ^Resources/
381 |
382 | ^Resources/.*\.lproj/
383 |
384 | optional
385 |
386 | weight
387 | 1000
388 |
389 | ^Resources/.*\.lproj/locversion.plist$
390 |
391 | omit
392 |
393 | weight
394 | 1100
395 |
396 | ^version.plist$
397 |
398 |
399 | rules2
400 |
401 | .*\.dSYM($|/)
402 |
403 | weight
404 | 11
405 |
406 | ^(.*/)?\.DS_Store$
407 |
408 | omit
409 |
410 | weight
411 | 2000
412 |
413 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/
414 |
415 | nested
416 |
417 | weight
418 | 10
419 |
420 | ^.*
421 |
422 | ^Info\.plist$
423 |
424 | omit
425 |
426 | weight
427 | 20
428 |
429 | ^PkgInfo$
430 |
431 | omit
432 |
433 | weight
434 | 20
435 |
436 | ^Resources/
437 |
438 | weight
439 | 20
440 |
441 | ^Resources/.*\.lproj/
442 |
443 | optional
444 |
445 | weight
446 | 1000
447 |
448 | ^Resources/.*\.lproj/locversion.plist$
449 |
450 | omit
451 |
452 | weight
453 | 1100
454 |
455 | ^[^/]+$
456 |
457 | nested
458 |
459 | weight
460 | 10
461 |
462 | ^embedded\.provisionprofile$
463 |
464 | weight
465 | 20
466 |
467 | ^version\.plist$
468 |
469 | weight
470 | 20
471 |
472 |
473 |
474 |
475 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeSignature:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/_CodeSignature/CodeSignature
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/5/flow.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/5/flow.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/5/spoon.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/5/spoon.exe
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/5/spoon.ini:
--------------------------------------------------------------------------------
1 | [Global]
2 | DeferUpdate=1
3 | ShowConsole=0
4 | DynamicConsole=1
5 | ReduceCPUUsage=1
6 | ReduceCPUInBackground=0
7 | 3ButtonMouse=0
8 | 1ButtonMouse=0
9 | PriorityBoost=1
10 | B3DXUsesOpenGL=1
11 | CaseSensitiveFileMode=0
12 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/8/flow.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/8/flow.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/8/spoon.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/8/spoon.exe
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/FT2Plugin.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/FT2Plugin.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakFFIPrims.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakFFIPrims.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakSSL.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakSSL.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakV3.sources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/SqueakV3.sources
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/flow.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/flow.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/msvcr100d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/msvcr100d.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/msvcr120d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/msvcr120d.dll
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/portforward.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/portforward.exe
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/splash.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/splash.bmp
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/spoon.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context processor.app/Contents/win32/spoon.exe
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context processor.app/Contents/win32/spoon.ini:
--------------------------------------------------------------------------------
1 | [Global]
2 | DeferUpdate=1
3 | ShowConsole=0
4 | DynamicConsole=1
5 | ReduceCPUUsage=1
6 | ReduceCPUInBackground=0
7 | 3ButtonMouse=0
8 | 1ButtonMouse=1
9 | PriorityBoost=1
10 | B3DXUsesOpenGL=0
11 | UseDirectSound=1
12 | CaseSensitiveFileMode=0
13 | EnableAltF4Quit=0
14 |
--------------------------------------------------------------------------------
/context.app/Contents/Resources/context.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ccrraaiigg/context/b24d68c9666b41133d87f46788daaa7874dce5bf/context.app/Contents/Resources/context.icns
--------------------------------------------------------------------------------
/context.app/Contents/Resources/description.rtfd/TXT.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\cocoartf1343\cocoasubrtf160
2 | {\fonttbl}
3 | {\colortbl;\red255\green255\blue255;}
4 | }
--------------------------------------------------------------------------------
/context.app/Contents/_CodeSignature/CodeResources:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | files
6 |
7 | Resources/Scripts/main.scpt
8 |
9 | 0WIzqf1gKAa4MmVHO6Ur2qVUolc=
10 |
11 | Resources/applet.icns
12 |
13 | sINd6lbiqHD5dL8c6u79cFvVXhw=
14 |
15 | Resources/applet.rsrc
16 |
17 | L+5FFoBs79CXuVD2msmkW8FtsO4=
18 |
19 | Resources/context 4 alpha 1 processor.app/Contents/Info.plist
20 |
21 | fZTi0ckJzBXT9E4quv6sjtr3ufk=
22 |
23 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Info.plist
24 |
25 | PmsnIcWdpzBhR8Dha7fncjG/k60=
26 |
27 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL
28 |
29 | BdgwRQcgOwyQuaxnFwFpvnVZD7o=
30 |
31 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL.sig
32 |
33 | /j5JqPatciWZj/ACBbteX0UdTjk=
34 |
35 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Resources/English.lproj/InfoPlist.strings
36 |
37 | hash
38 |
39 | He3NcxiQ02JfuCLq6QVu82vqCWQ=
40 |
41 | optional
42 |
43 |
44 | Resources/context 4 alpha 1 processor.app/Contents/Linux/bin/spoon
45 |
46 | PXvpRHvHKla+FHb9D5U71Nhe1fQ=
47 |
48 | Resources/context 4 alpha 1 processor.app/Contents/Linux/bin/spoon.sh
49 |
50 | 43XIfPBwvUXpqAdJ+7JdAxvJ9ZQ=
51 |
52 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.changes
53 |
54 | HMGZlsfsnGqdAz2H1SPDbILbkxI=
55 |
56 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.image
57 |
58 | rymVsOj4E3kkXwskKWUSj42Ev0E=
59 |
60 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.AioPlugin
61 |
62 | qWVbxX7yrgtzA0TDYMmAO3yjHdk=
63 |
64 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.ClipboardExtendedPlugin
65 |
66 | 1mrretigTHFuVUpKDqx4n7Akc0w=
67 |
68 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.FileCopyPlugin
69 |
70 | Hmo2zrhopEHto5qeRQTDL2GLwOA=
71 |
72 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Flow
73 |
74 | LR79FOsetjMK2JT0n6jr5WxmvFI=
75 |
76 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.HostWindowPlugin
77 |
78 | HQwE01mcgCAgCNqPTpW7Qcf7Zxo=
79 |
80 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin
81 |
82 | 6SrZ1p1lY5p/h3p01yiOOGf6y1Q=
83 |
84 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin2
85 |
86 | +Cl0UsZIAvvgncnzM7PEHBnFN4E=
87 |
88 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.MIDIPlugin
89 |
90 | VbWGQ9cRqw5YFlwjzmaOLJTyx6o=
91 |
92 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Mpeg3Plugin
93 |
94 | x+oMigpnf1YVtbXX1xCpKEaTqPE=
95 |
96 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Squeak3D
97 |
98 | 2BUTrwhktgOG/tqPPOubVJW+I24=
99 |
100 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.SqueakFFIPrims
101 |
102 | G5dDYyCEM4qpJj6chnU3B2c/5R8=
103 |
104 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.UnixOSProcessPlugin
105 |
106 | 5lExU40+7vLFuU75cN6egFYY9GY=
107 |
108 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.XDisplayControlPlugin
109 |
110 | XPl0yd24QP3mDOfcqKqrossvEI8=
111 |
112 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-X11
113 |
114 | 09w8SeAModNbBXADgzqk0nDS2ds=
115 |
116 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-custom
117 |
118 | ZZoBsHKtklc2YD/VSh4oe8iTibs=
119 |
120 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-fbdev
121 |
122 | 3ik/tNqWIWnltSqX1K8uJ4AWN00=
123 |
124 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-null
125 |
126 | S8HGjCpkLO1PGNJyUIzqDTW52kk=
127 |
128 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-ALSA
129 |
130 | H8X5AsapDWhqxQp22DznRYG+YtQ=
131 |
132 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-OSS
133 |
134 | rjkKoKPZM0g0VwiykQE1uUZgCJM=
135 |
136 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-custom
137 |
138 | NMDRPEFVW+p8wjo575bdt4a6kjE=
139 |
140 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-null
141 |
142 | M9urYEL+En9FN9nOGOmoiMmQjGU=
143 |
144 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/spoonvm
145 |
146 | uk5hUwkNQz7/qI0y7wvstw9nfJ0=
147 |
148 | Resources/context 4 alpha 1 processor.app/Contents/Linux/share/man/man1/squeak.1
149 |
150 | Iq7rhBF22BqfvgrBqV56qOzs3Hk=
151 |
152 | Resources/context 4 alpha 1 processor.app/Contents/MacOS/Spoon VM Opt
153 |
154 | iyfH510TCmZV2hnA5mjAZkJhDKw=
155 |
156 | Resources/context 4 alpha 1 processor.app/Contents/PkgInfo
157 |
158 | KBab09QKIOgNnkf11X8nlWBZexk=
159 |
160 | Resources/context 4 alpha 1 processor.app/Contents/Resources/.lldbinit
161 |
162 | ovzOej7CFnpkEj52+u/wzL5mqlg=
163 |
164 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Info.plist
165 |
166 | 0u8jekzhvbJ8liO1/CT1Gn8WkGg=
167 |
168 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/MacOS/Flow
169 |
170 | MqYaxMdYaLmBTz5M/zCkqaRTtgc=
171 |
172 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings
173 |
174 | hash
175 |
176 | cVCIS//7KA0JrdckIniEGWAQleU=
177 |
178 | optional
179 |
180 |
181 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Resources/libportmidi.dylib
182 |
183 | XiCiKm+3TW0OBLk8fHJE8RI5JLE=
184 |
185 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz
186 |
187 | lIyvLCZO+KRGAL+NfxIBMa9erNI=
188 |
189 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/memory/2-Context-crl.1.mcz
190 |
191 | sM5wBsUSw+7Epuu18tBLAYe7yxY=
192 |
193 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/1 of 4 - remote messaging.cs
194 |
195 | 7qrGVJbUKKwozyinQQ2d28tk5nc=
196 |
197 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/2 of 4 - unused-method removal.cs
198 |
199 | cMPJ5qPrDH9/MkFHQOEszkFnIRk=
200 |
201 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/3 of 4 - active imprinting.cs
202 |
203 | Db4qZcYf2ME6dldij7OVOEI7AlI=
204 |
205 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/4 of 4 - collateral improvements.cs
206 |
207 | Of3R3JfCKnuxymnyKrhr+TB3ZC0=
208 |
209 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/pictures/welcome.png
210 |
211 | Qi0n6Wm4tS4U5fHEY8tsO5dz9iM=
212 |
213 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/pictures/workspace.png
214 |
215 | I8K3IsNweZTg+vI9t4SmbFmcz1M=
216 |
217 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/the Spoon book.pages
218 |
219 | aZdY/Ew0tOsRKcwz6ZnC5u2F+H8=
220 |
221 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/the Spoon book.pdf
222 |
223 | SMNda/QXHpGDdeczb0Tg8c2kpCk=
224 |
225 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.changes
226 |
227 | /EN31X4cPL7DUIDgiLuyGB6UpdE=
228 |
229 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.image
230 |
231 | G3LftADOI9as/p6HV/+Zs1vsBCQ=
232 |
233 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722.image
234 |
235 | DXvCfcNt8qEJeD0xPlgdgVmMWKM=
236 |
237 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/SqueakV3.sources
238 |
239 | y7Z6EjIduId10U944oARF5m976g=
240 |
241 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/processor/context.config
242 |
243 | kouquLHq1KhvECbIg+vCQcF7Kx8=
244 |
245 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeDirectory
246 |
247 | jd8j2JPU/mXtPls8AoSxtbB4GoE=
248 |
249 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeRequirements
250 |
251 | hUB8L8IDPumEUiQlM5NK58rEIZ8=
252 |
253 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeResources
254 |
255 | 5/RzHT+I6bGpLxoiha0sQ/wH9Gg=
256 |
257 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeSignature
258 |
259 | +9+JthXr2waajrOhILmsbhGc4OE=
260 |
261 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/flow.dll
262 |
263 | ohiR0mab6fUBHeB6YVEHu9gcQ1c=
264 |
265 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/spoon.exe
266 |
267 | sQFnIlaglfREgtwATGu6N5x3hlc=
268 |
269 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/spoon.ini
270 |
271 | sFc4N9Ov51x9OMvCqbOrYR7pkqo=
272 |
273 | Resources/context 4 alpha 1 processor.app/Contents/win32/8/flow.dll
274 |
275 | vpHXqKW0emjZ2UTlU6s+7Cu8V0Y=
276 |
277 | Resources/context 4 alpha 1 processor.app/Contents/win32/8/spoon.exe
278 |
279 | 7z0VOPSdbZLSHszEVWWpdhvJA+4=
280 |
281 | Resources/context 4 alpha 1 processor.app/Contents/win32/FT2Plugin.dll
282 |
283 | I8+YVLxkNGaVJY6U95/LsaF2I00=
284 |
285 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakFFIPrims.dll
286 |
287 | LmKt+HGgImzB+C5z3yfa3Qdu68s=
288 |
289 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakSSL.dll
290 |
291 | ANiVuoTjSrNJhgT1BaCEx6TP16M=
292 |
293 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakV3.sources
294 |
295 | y7Z6EjIduId10U944oARF5m976g=
296 |
297 | Resources/context 4 alpha 1 processor.app/Contents/win32/flow.dll
298 |
299 | aU1UOigHRJociq1kaaxKKhEsOGc=
300 |
301 | Resources/context 4 alpha 1 processor.app/Contents/win32/msvcr100d.dll
302 |
303 | aFKyxZKzeU2hFNasXqnQgzF79a8=
304 |
305 | Resources/context 4 alpha 1 processor.app/Contents/win32/msvcr120d.dll
306 |
307 | AsWzQs4wV+yOUos3ELs4AePunas=
308 |
309 | Resources/context 4 alpha 1 processor.app/Contents/win32/portforward.exe
310 |
311 | 6PyzsCJAynpn/J5nJFvfsdDM0U8=
312 |
313 | Resources/context 4 alpha 1 processor.app/Contents/win32/splash.bmp
314 |
315 | Z1pqJVW+i+rjyL1SHfVLHAEsjW4=
316 |
317 | Resources/context 4 alpha 1 processor.app/Contents/win32/spoon.exe
318 |
319 | sQFnIlaglfREgtwATGu6N5x3hlc=
320 |
321 | Resources/context 4 alpha 1 processor.app/Contents/win32/spoon.ini
322 |
323 | j5Vol+ANBZp4iACugsXQbnoVwi8=
324 |
325 | Resources/context 4 alpha 1 processor.app/Icon
326 |
327 | 2jmj7l5rSw0yVb/vlWAYkK/YBwk=
328 |
329 | Resources/context.icns
330 |
331 | ZALiBP6QOkZmkr6vljxp54KfzYs=
332 |
333 | Resources/description.rtfd/TXT.rtf
334 |
335 | perqrWWBFvGSOMe4iRpjs368ahU=
336 |
337 |
338 | files2
339 |
340 | RUNME/README.html
341 |
342 | pivPv/dFNxdFYWw7B61TNLsp+ow=
343 |
344 | RUNME/linux/context.sh
345 |
346 | ralAASTKbbrN75bhfP4j1jA/mGc=
347 |
348 | RUNME/mac/context 4 alpha 1.app
349 |
350 | symlink
351 | ../../../../context 4 alpha 1.app
352 |
353 | RUNME/windows/context.vbs
354 |
355 | ipF7h2sIBrpZPiKTnum3YfUWKjY=
356 |
357 | Resources/Scripts/main.scpt
358 |
359 | 0WIzqf1gKAa4MmVHO6Ur2qVUolc=
360 |
361 | Resources/applet.icns
362 |
363 | sINd6lbiqHD5dL8c6u79cFvVXhw=
364 |
365 | Resources/applet.rsrc
366 |
367 | L+5FFoBs79CXuVD2msmkW8FtsO4=
368 |
369 | Resources/context 4 alpha 1 processor.app/Contents/Info.plist
370 |
371 | fZTi0ckJzBXT9E4quv6sjtr3ufk=
372 |
373 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Info.plist
374 |
375 | PmsnIcWdpzBhR8Dha7fncjG/k60=
376 |
377 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL
378 |
379 | BdgwRQcgOwyQuaxnFwFpvnVZD7o=
380 |
381 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/MacOS/SqueakQL.sig
382 |
383 | /j5JqPatciWZj/ACBbteX0UdTjk=
384 |
385 | Resources/context 4 alpha 1 processor.app/Contents/Library/QuickLook/SqueakQL.qlgenerator/Contents/Resources/English.lproj/InfoPlist.strings
386 |
387 | hash
388 |
389 | He3NcxiQ02JfuCLq6QVu82vqCWQ=
390 |
391 | optional
392 |
393 |
394 | Resources/context 4 alpha 1 processor.app/Contents/Linux/bin/spoon
395 |
396 | PXvpRHvHKla+FHb9D5U71Nhe1fQ=
397 |
398 | Resources/context 4 alpha 1 processor.app/Contents/Linux/bin/spoon.sh
399 |
400 | 43XIfPBwvUXpqAdJ+7JdAxvJ9ZQ=
401 |
402 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.changes
403 |
404 | HMGZlsfsnGqdAz2H1SPDbILbkxI=
405 |
406 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/activeFilesystem.image
407 |
408 | rymVsOj4E3kkXwskKWUSj42Ev0E=
409 |
410 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.AioPlugin
411 |
412 | qWVbxX7yrgtzA0TDYMmAO3yjHdk=
413 |
414 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.ClipboardExtendedPlugin
415 |
416 | 1mrretigTHFuVUpKDqx4n7Akc0w=
417 |
418 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.FileCopyPlugin
419 |
420 | Hmo2zrhopEHto5qeRQTDL2GLwOA=
421 |
422 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Flow
423 |
424 | LR79FOsetjMK2JT0n6jr5WxmvFI=
425 |
426 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.HostWindowPlugin
427 |
428 | HQwE01mcgCAgCNqPTpW7Qcf7Zxo=
429 |
430 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin
431 |
432 | 6SrZ1p1lY5p/h3p01yiOOGf6y1Q=
433 |
434 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.KedamaPlugin2
435 |
436 | +Cl0UsZIAvvgncnzM7PEHBnFN4E=
437 |
438 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.MIDIPlugin
439 |
440 | VbWGQ9cRqw5YFlwjzmaOLJTyx6o=
441 |
442 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Mpeg3Plugin
443 |
444 | x+oMigpnf1YVtbXX1xCpKEaTqPE=
445 |
446 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.Squeak3D
447 |
448 | 2BUTrwhktgOG/tqPPOubVJW+I24=
449 |
450 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.SqueakFFIPrims
451 |
452 | G5dDYyCEM4qpJj6chnU3B2c/5R8=
453 |
454 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.UnixOSProcessPlugin
455 |
456 | 5lExU40+7vLFuU75cN6egFYY9GY=
457 |
458 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.XDisplayControlPlugin
459 |
460 | XPl0yd24QP3mDOfcqKqrossvEI8=
461 |
462 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-X11
463 |
464 | 09w8SeAModNbBXADgzqk0nDS2ds=
465 |
466 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-custom
467 |
468 | ZZoBsHKtklc2YD/VSh4oe8iTibs=
469 |
470 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-fbdev
471 |
472 | 3ik/tNqWIWnltSqX1K8uJ4AWN00=
473 |
474 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-display-null
475 |
476 | S8HGjCpkLO1PGNJyUIzqDTW52kk=
477 |
478 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-ALSA
479 |
480 | H8X5AsapDWhqxQp22DznRYG+YtQ=
481 |
482 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-OSS
483 |
484 | rjkKoKPZM0g0VwiykQE1uUZgCJM=
485 |
486 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-custom
487 |
488 | NMDRPEFVW+p8wjo575bdt4a6kjE=
489 |
490 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/so.vm-sound-null
491 |
492 | M9urYEL+En9FN9nOGOmoiMmQjGU=
493 |
494 | Resources/context 4 alpha 1 processor.app/Contents/Linux/lib/spoon/4.4.7-2357/spoonvm
495 |
496 | uk5hUwkNQz7/qI0y7wvstw9nfJ0=
497 |
498 | Resources/context 4 alpha 1 processor.app/Contents/Linux/share/man/man1/squeak.1
499 |
500 | Iq7rhBF22BqfvgrBqV56qOzs3Hk=
501 |
502 | Resources/context 4 alpha 1 processor.app/Contents/MacOS/Spoon VM Opt
503 |
504 | iyfH510TCmZV2hnA5mjAZkJhDKw=
505 |
506 | Resources/context 4 alpha 1 processor.app/Contents/PkgInfo
507 |
508 | KBab09QKIOgNnkf11X8nlWBZexk=
509 |
510 | Resources/context 4 alpha 1 processor.app/Contents/Resources/.lldbinit
511 |
512 | ovzOej7CFnpkEj52+u/wzL5mqlg=
513 |
514 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Info.plist
515 |
516 | 0u8jekzhvbJ8liO1/CT1Gn8WkGg=
517 |
518 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/MacOS/Flow
519 |
520 | MqYaxMdYaLmBTz5M/zCkqaRTtgc=
521 |
522 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Resources/English.lproj/InfoPlist.strings
523 |
524 | hash
525 |
526 | cVCIS//7KA0JrdckIniEGWAQleU=
527 |
528 | optional
529 |
530 |
531 | Resources/context 4 alpha 1 processor.app/Contents/Resources/Flow.bundle/Contents/Resources/libportmidi.dylib
532 |
533 | XiCiKm+3TW0OBLk8fHJE8RI5JLE=
534 |
535 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/memory/1-ContextPrecursors-crl.1.mcz
536 |
537 | lIyvLCZO+KRGAL+NfxIBMa9erNI=
538 |
539 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/memory/2-Context-crl.1.mcz
540 |
541 | sM5wBsUSw+7Epuu18tBLAYe7yxY=
542 |
543 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/1 of 4 - remote messaging.cs
544 |
545 | 7qrGVJbUKKwozyinQQ2d28tk5nc=
546 |
547 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/2 of 4 - unused-method removal.cs
548 |
549 | cMPJ5qPrDH9/MkFHQOEszkFnIRk=
550 |
551 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/3 of 4 - active imprinting.cs
552 |
553 | Db4qZcYf2ME6dldij7OVOEI7AlI=
554 |
555 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/changes/processor/4 of 4 - collateral improvements.cs
556 |
557 | Of3R3JfCKnuxymnyKrhr+TB3ZC0=
558 |
559 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/pictures/welcome.png
560 |
561 | Qi0n6Wm4tS4U5fHEY8tsO5dz9iM=
562 |
563 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/pictures/workspace.png
564 |
565 | I8K3IsNweZTg+vI9t4SmbFmcz1M=
566 |
567 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/the Spoon book.pages
568 |
569 | aZdY/Ew0tOsRKcwz6ZnC5u2F+H8=
570 |
571 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/documentation/book/the Spoon book.pdf
572 |
573 | SMNda/QXHpGDdeczb0Tg8c2kpCk=
574 |
575 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.changes
576 |
577 | /EN31X4cPL7DUIDgiLuyGB6UpdE=
578 |
579 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/23687C16-EBB8-48B7-A38D-1B8D9216865B/23687C16-EBB8-48B7-A38D-1B8D9216865B.image
580 |
581 | G3LftADOI9as/p6HV/+Zs1vsBCQ=
582 |
583 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/946BE974-48B7-4D11-B209-6355B3E49722.image
584 |
585 | DXvCfcNt8qEJeD0xPlgdgVmMWKM=
586 |
587 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/memories/946BE974-48B7-4D11-B209-6355B3E49722/SqueakV3.sources
588 |
589 | y7Z6EjIduId10U944oARF5m976g=
590 |
591 | Resources/context 4 alpha 1 processor.app/Contents/Resources/context/processor/context.config
592 |
593 | kouquLHq1KhvECbIg+vCQcF7Kx8=
594 |
595 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeDirectory
596 |
597 | jd8j2JPU/mXtPls8AoSxtbB4GoE=
598 |
599 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeRequirements
600 |
601 | hUB8L8IDPumEUiQlM5NK58rEIZ8=
602 |
603 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeResources
604 |
605 | 5/RzHT+I6bGpLxoiha0sQ/wH9Gg=
606 |
607 | Resources/context 4 alpha 1 processor.app/Contents/_CodeSignature/CodeSignature
608 |
609 | +9+JthXr2waajrOhILmsbhGc4OE=
610 |
611 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/flow.dll
612 |
613 | ohiR0mab6fUBHeB6YVEHu9gcQ1c=
614 |
615 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/spoon.exe
616 |
617 | sQFnIlaglfREgtwATGu6N5x3hlc=
618 |
619 | Resources/context 4 alpha 1 processor.app/Contents/win32/5/spoon.ini
620 |
621 | sFc4N9Ov51x9OMvCqbOrYR7pkqo=
622 |
623 | Resources/context 4 alpha 1 processor.app/Contents/win32/8/flow.dll
624 |
625 | vpHXqKW0emjZ2UTlU6s+7Cu8V0Y=
626 |
627 | Resources/context 4 alpha 1 processor.app/Contents/win32/8/spoon.exe
628 |
629 | 7z0VOPSdbZLSHszEVWWpdhvJA+4=
630 |
631 | Resources/context 4 alpha 1 processor.app/Contents/win32/FT2Plugin.dll
632 |
633 | I8+YVLxkNGaVJY6U95/LsaF2I00=
634 |
635 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakFFIPrims.dll
636 |
637 | LmKt+HGgImzB+C5z3yfa3Qdu68s=
638 |
639 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakSSL.dll
640 |
641 | ANiVuoTjSrNJhgT1BaCEx6TP16M=
642 |
643 | Resources/context 4 alpha 1 processor.app/Contents/win32/SqueakV3.sources
644 |
645 | y7Z6EjIduId10U944oARF5m976g=
646 |
647 | Resources/context 4 alpha 1 processor.app/Contents/win32/flow.dll
648 |
649 | aU1UOigHRJociq1kaaxKKhEsOGc=
650 |
651 | Resources/context 4 alpha 1 processor.app/Contents/win32/msvcr100d.dll
652 |
653 | aFKyxZKzeU2hFNasXqnQgzF79a8=
654 |
655 | Resources/context 4 alpha 1 processor.app/Contents/win32/msvcr120d.dll
656 |
657 | AsWzQs4wV+yOUos3ELs4AePunas=
658 |
659 | Resources/context 4 alpha 1 processor.app/Contents/win32/portforward.exe
660 |
661 | 6PyzsCJAynpn/J5nJFvfsdDM0U8=
662 |
663 | Resources/context 4 alpha 1 processor.app/Contents/win32/splash.bmp
664 |
665 | Z1pqJVW+i+rjyL1SHfVLHAEsjW4=
666 |
667 | Resources/context 4 alpha 1 processor.app/Contents/win32/spoon.exe
668 |
669 | sQFnIlaglfREgtwATGu6N5x3hlc=
670 |
671 | Resources/context 4 alpha 1 processor.app/Contents/win32/spoon.ini
672 |
673 | j5Vol+ANBZp4iACugsXQbnoVwi8=
674 |
675 | Resources/context 4 alpha 1 processor.app/Icon
676 |
677 | 2jmj7l5rSw0yVb/vlWAYkK/YBwk=
678 |
679 | Resources/context.icns
680 |
681 | ZALiBP6QOkZmkr6vljxp54KfzYs=
682 |
683 | Resources/description.rtfd/TXT.rtf
684 |
685 | perqrWWBFvGSOMe4iRpjs368ahU=
686 |
687 |
688 | rules
689 |
690 | ^Resources/
691 |
692 | ^Resources/.*\.lproj/
693 |
694 | optional
695 |
696 | weight
697 | 1000
698 |
699 | ^Resources/.*\.lproj/locversion.plist$
700 |
701 | omit
702 |
703 | weight
704 | 1100
705 |
706 | ^version.plist$
707 |
708 |
709 | rules2
710 |
711 | .*\.dSYM($|/)
712 |
713 | weight
714 | 11
715 |
716 | ^(.*/)?\.DS_Store$
717 |
718 | omit
719 |
720 | weight
721 | 2000
722 |
723 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/
724 |
725 | nested
726 |
727 | weight
728 | 10
729 |
730 | ^.*
731 |
732 | ^Info\.plist$
733 |
734 | omit
735 |
736 | weight
737 | 20
738 |
739 | ^PkgInfo$
740 |
741 | omit
742 |
743 | weight
744 | 20
745 |
746 | ^Resources/
747 |
748 | weight
749 | 20
750 |
751 | ^Resources/.*\.lproj/
752 |
753 | optional
754 |
755 | weight
756 | 1000
757 |
758 | ^Resources/.*\.lproj/locversion.plist$
759 |
760 | omit
761 |
762 | weight
763 | 1100
764 |
765 | ^[^/]+$
766 |
767 | nested
768 |
769 | weight
770 | 10
771 |
772 | ^embedded\.provisionprofile$
773 |
774 | weight
775 | 20
776 |
777 | ^version\.plist$
778 |
779 | weight
780 | 20
781 |
782 |
783 |
784 |
785 |
--------------------------------------------------------------------------------