2014-12-06 11:18 GMT+01:00 Marcus Denker <marcus.denker@inria.fr>:
On 05 Dec 2014, at 15:18, stepharo <stepharo@free.fr> wrote:
I would like to be able to express
Compiler new bindings: { a -> 3. b -> 4}; evaluate: 'a + b'; result and get 7
How can I do that?
Not directly, as evaluate is just a doit⦠but it can be added as the machinery is there for evaluating in context in the debugger.
I will have a look but not this weekend.
Marcus
The easiest solution I have found: Smalltalk compiler evaluate:'a+b' notifying: (Dictionary newFrom:{ WorkspaceVariable key:#a value:3. WorkspaceVariable key:#b value:4}) logged:nil The dictionary is used as the receiver for the call to #bindingOf: and WorkspaceVariable acts like a LiteralVariable that implements emitValue/emitStore nicolai