Description
Event based libraries help handling large number of concurrent connections and sources of async events. Many successful projects use such libraries like for instance Node.js and Twisted. To be used in Pharo suitable interface in image and quite possibly in VM would be needed.
Technical Details
Two main candidate libraries for inclusion would be libev and libuv. It would be necessary to find suitable and efficient non delaying way to transfer callbacks from library to process inside Smalltalk image. One path suggested by Elliot Miranda was to investigate Multi threaded VM and see if some of its functionality can be used as is or as a base for further development.
Benefits to the Student
Getting in depth understanding of event driven frameworks and interfacing to Smalltalk virtual machine.
Benefits to the Community
Having efficient event driven library available in Smalltalk would open possibility of writing efficient servers in Smalltalk that can handle large number of concurrent connections.
|