Fibers is a Guile library that implements a a lightweight concurrency facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is like a "goroutine" from the Go language: a lightweight thread-like abstraction. Systems built with Fibers can scale up to millions of concurrent fibers, tens of thousands of concurrent socket connections, and many parallel cores. The Fibers library also provides Concurrent ML-like channels for communication between fibers.
Note that Fibers makes use of some Guile 2.1/2.2-specific features and is not available for Guile 2.0.
Fibers is a Guile library that implements a a lightweight concurrency facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is like a "goroutine" from the Go language: a lightweight thread-like abstraction. Systems built with Fibers can scale up to millions of concurrent fibers, tens of thousands of concurrent socket connections, and many parallel cores. The Fibers library also provides Concurrent ML-like channels for communication between fibers.
Note that Fibers makes use of some Guile 2.1/2.2-specific features and is not available for Guile 2.0.
Fibers is a Guile library that implements a a lightweight concurrency facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is like a "goroutine" from the Go language: a lightweight thread-like abstraction. Systems built with Fibers can scale up to millions of concurrent fibers, tens of thousands of concurrent socket connections, and many parallel cores. The Fibers library also provides Concurrent ML-like channels for communication between fibers.
Note that Fibers makes use of some Guile 2.1/2.2-specific features and is not available for Guile 2.0.
Fibers is a Guile library that implements a a lightweight concurrency facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is like a "goroutine" from the Go language: a lightweight thread-like abstraction. Systems built with Fibers can scale up to millions of concurrent fibers, tens of thousands of concurrent socket connections, and many parallel cores. The Fibers library also provides Concurrent ML-like channels for communication between fibers.
Note that Fibers makes use of some Guile 2.1/2.2-specific features and is not available for Guile 2.0.
Guile-SMC is a state machine compiler that allows users to describe finite state machines (FSMs) in Scheme in terms of transition tables. It is capable to generate such transition tables from a PlantUML state diagrams.
A transition table can be verified and checked for dead-ends and infinite loops. Also Guile-SMC FSMs gather statistics when they run.
Guile-SMC comes with a Scheme program called smc
-- a state machine compiler itself. It produces a Scheme code for an FSM from the PlantUML format. This tool is meant to be called on a PlantUML file when a program with a FSM is being built (for example, from a Makefile.)
Guile-Lib is intended as an accumulation place for pure-scheme Guile modules, allowing for people to cooperate integrating their generic Guile modules into a coherent library. Think "a down-scaled, limited-scope CPAN for Guile". It provides the following modules:
(apicheck) Describe and verify library programming interfaces.
(config load) Loading configuration files.
(container async-queue) A thread-safe message queue.
(container nodal-tree) A tree consisting of nodes with attributes.
(container delay-tree) A nodal tree with lazily evaluated fields.
(debugging assert) Helpful assert macro.
(debugging time) A simple macro to time the execution of an expression.
(graph topological-sort) Routines to perform topological sorts.
(htmlprag) Neil Van Dyke's permissive ("pragmatic") HTML parser.
(io string) SLIB's IO routines dealing with strings.
(logging logger) A flexible logging system.
(logging port-log) A logger that outputs to a port.
(logging rotating-log) A logger that rotates its output files.
(match-bind) Nifty and concise regular expression routines.
(math minima) A golden-section minimum finder.
(math primes) Functions related to prime numbers and factorization.
(os process) Spawning processes and capturing their output.
(scheme documentation) Macros to define different kinds of variables with documentation.
(scheme kwargs) Defining functions with flexible keyword arguments.
(search basic) Classic search functions.
(string completion) Building blocks for tab completion.
(string soundex) The SOUNDEX string categorization algorithm.
(string transform) Beyond SRFI-13.
(string wrap) A versatile string formatter.
(term ansi-color) Generate ANSI color escape sequences.
(unit-test) A JUnit-style unit testing framework.
Guile-Lib is intended as an accumulation place for pure-scheme Guile modules, allowing for people to cooperate integrating their generic Guile modules into a coherent library. Think "a down-scaled, limited-scope CPAN for Guile". It provides the following modules:
(apicheck) Describe and verify library programming interfaces.
(config load) Loading configuration files.
(container async-queue) A thread-safe message queue.
(container nodal-tree) A tree consisting of nodes with attributes.
(container delay-tree) A nodal tree with lazily evaluated fields.
(debugging assert) Helpful assert macro.
(debugging time) A simple macro to time the execution of an expression.
(graph topological-sort) Routines to perform topological sorts.
(htmlprag) Neil Van Dyke's permissive ("pragmatic") HTML parser.
(io string) SLIB's IO routines dealing with strings.
(logging logger) A flexible logging system.
(logging port-log) A logger that outputs to a port.
(logging rotating-log) A logger that rotates its output files.
(match-bind) Nifty and concise regular expression routines.
(math minima) A golden-section minimum finder.
(math primes) Functions related to prime numbers and factorization.
(os process) Spawning processes and capturing their output.
(scheme documentation) Macros to define different kinds of variables with documentation.
(scheme kwargs) Defining functions with flexible keyword arguments.
(search basic) Classic search functions.
(string completion) Building blocks for tab completion.
(string soundex) The SOUNDEX string categorization algorithm.
(string transform) Beyond SRFI-13.
(string wrap) A versatile string formatter.
(term ansi-color) Generate ANSI color escape sequences.
(unit-test) A JUnit-style unit testing framework.
Guile-Lib is intended as an accumulation place for pure-scheme Guile modules, allowing for people to cooperate integrating their generic Guile modules into a coherent library. Think "a down-scaled, limited-scope CPAN for Guile". It provides the following modules:
(apicheck) Describe and verify library programming interfaces.
(config load) Loading configuration files.
(container async-queue) A thread-safe message queue.
(container nodal-tree) A tree consisting of nodes with attributes.
(container delay-tree) A nodal tree with lazily evaluated fields.
(debugging assert) Helpful assert macro.
(debugging time) A simple macro to time the execution of an expression.
(graph topological-sort) Routines to perform topological sorts.
(htmlprag) Neil Van Dyke's permissive ("pragmatic") HTML parser.
(io string) SLIB's IO routines dealing with strings.
(logging logger) A flexible logging system.
(logging port-log) A logger that outputs to a port.
(logging rotating-log) A logger that rotates its output files.
(match-bind) Nifty and concise regular expression routines.
(math minima) A golden-section minimum finder.
(math primes) Functions related to prime numbers and factorization.
(os process) Spawning processes and capturing their output.
(scheme documentation) Macros to define different kinds of variables with documentation.
(scheme kwargs) Defining functions with flexible keyword arguments.
(search basic) Classic search functions.
(string completion) Building blocks for tab completion.
(string soundex) The SOUNDEX string categorization algorithm.
(string transform) Beyond SRFI-13.
(string wrap) A versatile string formatter.
(term ansi-color) Generate ANSI color escape sequences.
(unit-test) A JUnit-style unit testing framework.
guile-ncurses provides Guile language bindings for the ncurses library.
This package provides Guile bindings to the SQLite database system.
This package provides a simple yaml module for Guile using the ffi-helper from nyacc.
This package provides SRFI-89 optional positional and named parameters, which define* and lambda* special forms
Guile-RSVG wraps the RSVG library for Guile, allowing you to render SVG images onto Cairo surfaces.
This package provides facilities for working with .torrent
or metainfo files. Implements a bencode reader and writer according to Bitorrent BEP003.
This package provides a Guile library to communicate with a Debbugs bug tracker's SOAP service, such as https://bugs.gnu.org.
This is a serialization library for serializing objects like classes and objects, closures and structs. This currently does not support serializing continuations or delimited continuations.
The (hashing …)
modules implement cryptographic hash functions in pure R6RS Scheme: CRC, HMAC, MD5, SHA-1, and SHA-2 (SHA-256, SHA-512).
Guile-SDL2 provides Guile Scheme bindings for the SDL2 C shared library. The bindings are written in pure Scheme using Guile's foreign function interface.
Guile-SDL2 provides Guile Scheme bindings for the SDL2 C shared library. The bindings are written in pure Scheme using Guile's foreign function interface.
This package provides Guile bindings for zlib, a lossless data-compression library. The bindings are written in pure Scheme by using Guile's foreign function interface.
Irregex is an s-expression based alternative to your classic string-based regular expressions. It implements SRFI 115 and is deeply inspired by the SCSH regular expression system.
Wisp is a syntax for Guile which provides a Python-like whitespace-significant language. It may be easier on the eyes for some users and in some situations.
This package provides bindings for Newt, a programming library for color text mode, widget based user interfaces. The bindings are written in pure Scheme by using Guileās foreign function interface.
guile-curl
is a project that has procedures that allow Guile to do client-side URL transfers, like requesting documents from HTTP or FTP servers. It is based on the curl library.