Guile library providing useful patterns when using Guile Fibers. This includes concurrency primitives, promises, non-blocking utilities, a resource pool, a web server implementation and more. https://cbaines.codeberg.page/guile-knots/
Find a file
Christopher Baines d79284b471
All checks were successful
/ test (push) Successful in 9s
Thread the scheduler through for a few more things
2026-04-11 19:35:13 +03:00
.forgejo/workflows Fix call to documenta 2025-07-10 16:15:58 +01:00
doc Mention initial release in the documentation 2026-04-08 08:31:42 +03:00
knots Thread the scheduler through for a few more things 2026-04-11 19:35:13 +03:00
tests Move towards handlers taking request and body 2026-04-07 18:48:12 +03:00
.gitignore Enable the Makefile to run tests 2024-12-29 10:47:54 +00:00
bootstrap Initial commit 2024-12-16 09:18:12 +00:00
configure.ac Check for Guile Fibers and Guile Lib in configure.ac 2026-03-29 18:02:34 +01:00
COPYING Initial commit 2024-12-16 09:18:12 +00:00
guile.am Make some tweaks around tests .go files 2026-04-09 12:57:00 +03:00
guix-dev.scm Update license headers 2026-03-29 17:45:50 +01:00
knots.scm Remove hardcoded values from wait-when-system-clock-behind 2026-04-07 18:48:12 +03:00
Makefile.am Make some tweaks around tests .go files 2026-04-09 12:57:00 +03:00
pre-inst-env.in Initial commit 2024-12-16 09:18:12 +00:00
README.org Rename README 2026-03-23 15:15:26 +00:00
test-env.in Fix backtrace tests when not running from the repository root 2026-03-30 10:05:37 +01:00
tests.scm Use the knots backtrace printer for tests 2025-06-27 00:16:41 +02:00

-- mode: org --

Guile Knots

Guile Knots is a library providing higher-level patterns and building blocks for programming with Guile Fibers.

This includes:

  • Parallel map/for-each with configurable concurrency limits
  • Resource and thread pools
  • Fiber-aware promises for lazy and eager parallel evaluation
  • Timeouts for fibers and I/O ports
  • A HTTP web server
  • Non-blocking socket utilities