I just cut a new release of Fibers, a concurrency library for Guile.
Find it here:


  $ sha256sum fibers-0.3.0.tar.gz 

Project page here:


There is a texinfo manual inside, or you can read it on the web site:


The interesting change in this release was that I rewrote the channels
and timers implementation in terms of Concurrent ML-like primitives.
That let me implement "select"-like functionality, where you can
efficiently wait for one of a number of operations to complete.  See the
manual for more.

There is also a new REPL integration which I just now realized that I
forgot to document :)

  scheme@(guile-user)> (use-modules (fibers))
  scheme@(guile-user)> ,help fibers
  Fibers Commands [abbrev]:

   ,scheds                           - Show a list of schedulers.
   ,spawn-sched                      - Create a new scheduler for fibers, and 
run it on a new kernel thread.
   ,kill-sched SCHED                 - Shut down a scheduler.
   ,fibers [SCHED]                   - Show a list of fibers.
   ,spawn-fiber EXP [SCHED]          - Spawn a new fiber that runs EXP.
   ,kill-fiber FIBER                 - Shut down a fiber.

I think ,kill-fiber doesn't work yet.  Anyway it's a nice way to
experiment.  Run ,spawn-fiber (pk 'hey) to give it a go.

Happy hacking,


Reply via email to