akovalenko / sbcl-win32-threads

Unofficial SBCL fork for MS Windows (normally kept in sync with the mainline, intended for eventual merge) featuring threads, AMD64 port, and some I/O subsystem modifications (mostly Windows-specific). Based on threading support by dmitry_vk (with GC safepoints)
http://www.siftsoft.com/support-sbcl-windows.html
Other
74 stars 4 forks source link

Fibers/coroutines in SBCL #24

Open orthecreedence opened 11 years ago

orthecreedence commented 11 years ago

You mentioned in a comp.lang.lisp thread that you implemented fiber support and were planning to implement unix's getcontext et al to make simple user-level threads portable to windows/unix.

Is this exposed anywhere in this branch? I'm currently developing a CL library for non-blocking IO and would love to build a layer on top of it that uses coroutines to simulate blocking IO.

Also, knowing very little (practically nothing) about the internals of most CL compilers, are coroutines something that are fairly easily implemented once threading is supported by an implementation? I think CL suffers by not having them and I'd love to get support for them in most thread-enabled implementations. Your thoughts/advice on this would be greatly appreciated.

ghost commented 10 years ago

Is there any documentation about the efforts to add green threads/coroutines/fibers to SBCL?

Also I found out about this through Nikodemus's blog.