8sync

by Daniel Pimentel — Fri 11 November 2016

8sync is an asynchronous programming library for GNU Guile. It makes use of delimited continuations to avoid a mess of callbacks resulting in clean, easy to read non-blocking code.

Example

(define (site-user-view request db-conn)
  Displayalistofallusersregisteredonthissite
  (htmlize-response
   (list-users-template
    #:request request
    ;; Wrapping in 8sync suspends this function, running
    ;; fetch-active-users asynchronously, and wakesup the function
    ;; when ready, seamlessly passing back its result.
    #:users (8sync
             (fetch-active-users db-conn)))
GNU 8sync
2000-2016 by Daniel Pimentel under GFDL