> On Feb 20, 2017, at 12:19 PM, Andy Wingo <wi...@pobox.com> wrote: > > Hello! > > I'm delighted to announce the release of Fibers 1.0.0. > > Fibers is a lightweight concurrency facility for Guile that supports > non-blocking input and output, millions of concurrent threads, and > Concurrent ML-inspired communication primitives. For more information, > see the web version of the manual at: > > https://github.com/wingo/fibers/wiki/Manual > > The manual is also available in PDF and Info formats in the tarball. > > The 1.0.0 tarball can be found here: > > https://wingolog.org/pub/fibers/fibers-1.0.0.tar.gz > > Its SHA256 sum is: > > a051913e252f872c969d71939310cee10844157a317db93ebcaf3df8c479536e > fibers-1.0.0.tar.gz > > Fibers 1.0.0 requires the newly released Guile 2.1.7. > > This release finally improves the exception handling situation, so that > that fibers that have uncaught exceptions print nice errors instead of > killing the system. It also fixes a bug in channels, adds a condition > variable implementation, adds a standalone web server implementation > that scales with the number of cores available to it, implements many > performance improvements, lowers the overhead of preemption, and > improves documentation. > > Happy hacking, > > Andy > >
This is not going to compile on macOS or FreeBSD, but these OSes do support kqueue. How to proceed? I think making equeue look like epoll may be a bit kludgy. And the cpuclockid calls need to be dealt with: * clock_getcpuclockid * pthread_getcpuclockid * clock_nanosleep Matt