Callbacks from C into Squeak

Daniel Poon mr.d.poon at gmail.com
Fri Dec 15 10:12:55 UTC 2006


John M McIntosh <johnmci <at> smalltalkconsulting.com> writes:

> Well you can't callback from C to Squeak, once you are in a primitive  
> call the interpeter is suspended, triggering a GC event requires
> special care to ensure object pointers you many have will still be  
> valid (remapped) after the GC completes.  You can of course do a  
> limited set of VM calls to manipulate or make new object, but that  
> does not include running byte codes.  Likely this can be overcome by  
> $ (euros preferred).

Thanks for the answer John. 
If I communicate with the DLL with primitive date allocated on the C heap, then
I don't mind if Squeak objects move around anymore. Am I still prevented from
calling back into Squeak?

> Other options include running a VM (or VMs) as a sub process and  
> talking to it via pipes or shared memory areas for it to do  
> computational work.  Technially this is done by mac carbon and unix  
> VM when they run headless to provide support as a browser plugin.

How do you get UI events into Squeak without callbacks?

Cheers

Daniel




More information about the Squeak-dev mailing list