Well, nothing we don't already have with Zinc, green threads, taskit and generators (+ syntax sugar).
The nicest thing is however:
http://www.tornadoweb.org/en/stable/ioloop.html#i-o-eventsThey have a nice library to do async IO. We have also one but we do not exploit it enough I think.
This is nice because it would simplify the implementation of all external code calling Pharo.
In that front we currently have some spaghetti:
- the input event fetcher implements an async queue of UI events whose consumer is a process in the image and the producer is the VM.
- sockets and the async io plugin have a different approach, also written in the VM.
- callbacks should also use a similar approach to notify when they are being called from C.