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/
  • Scheme 59%
  • Tree-sitter Query 40%
  • Shell 0.4%
  • M4 0.3%
  • Makefile 0.3%
Find a file
Christopher Baines d1cecc06fb
All checks were successful
/ test (push) Successful in 22s
Fix a texinfo issue in the documentation
2026-05-25 11:17:49 +02: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 Fix a texinfo issue in the documentation 2026-05-25 11:17:49 +02:00
tests Add notification 2026-05-25 10:34:52 +02: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 Add call-with-knots-stack-wrapping 2026-04-19 13:58:02 +01:00
Makefile.am Add documenta targets to the Makefile 2026-05-25 11:17:33 +02: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