Supply named temporaries to Compiler>>#evaluate:...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Supply named temporaries to Compiler>>#evaluate:...

Sean P. DeNigris
Administrator
I want to be able to evaluate a string like '2 + arg1' and supply anObject for arg1 to the compiler.

I naively tried:
| aContext |
aContext := thisContext copy
        tempNamed: 'arg1' put: 1;
        yourself.
Compiler evaluate: '2 + arg1' in: aContext to: nil

which didn't even come close to working!

Any pointers?
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Supply named temporaries to Compiler>>#evaluate:...

Nicolai Hess
2015-02-04 18:48 GMT+01:00 Sean P. DeNigris <[hidden email]>:
I want to be able to evaluate a string like '2 + arg1' and supply anObject
for arg1 to the compiler.

I naively tried:
| aContext |
aContext := thisContext copy
        tempNamed: 'arg1' put: 1;
        yourself.
Compiler evaluate: '2 + arg1' in: aContext to: nil

which didn't even come close to working!

Any pointers?

a workaround:



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Supply-named-temporaries-to-Compiler-evaluate-tp4803689.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: Supply named temporaries to Compiler>>#evaluate:...

Marcus Denker-4

On 04 Feb 2015, at 21:46, Nicolai Hess <[hidden email]> wrote:

2015-02-04 18:48 GMT+01:00 Sean P. DeNigris <[hidden email]>:
I want to be able to evaluate a string like '2 + arg1' and supply anObject
for arg1 to the compiler.

I naively tried:
| aContext |
aContext := thisContext copy
        tempNamed: 'arg1' put: 1;
        yourself.
Compiler evaluate: '2 + arg1' in: aContext to: nil

which didn't even come close to working!

Any pointers?

a workaround:
Yes, we should provide a nice API… it is on my TODO but I did not manage to work on it yet.

Marcus