Guile-Gcrypt provides a Guile interface to a subset of the GNU Libgcrypt crytographic library. It provides modules for cryptographic hash functions, message authentication codes (MAC), public-key cryptography, strong randomness, and more. It is implemented using the foreign function interface (FFI) of Guile.
This is Emacs with a few settings that make working with Guile easier for people new to Emacs. Features include: CUA mode, Geiser, tool bar icons to evaluate Guile buffers, support for Guile's very own picture language, code completion, a simple mode line, etc.
Guile-ICS is an iCalendar (RFC5545) and vCard (RFC6350) format parser library written in pure Scheme. The library can be used to read and write iCalendar/vCadr data and convert the data from/to various formats.
The library is shipped with documentation in Info format and usage examples.
guile-xapian
provides Guile bindings for Xapian, a search engine library. Xapian is a highly adaptable toolkit which allows developers to easily add advanced indexing and search facilities to their own applications. It has built-in support for several families of weighting models and also supports a rich set of boolean query operators.
Guile Config is a library providing a declarative approach to application configuration specification. The library provides clean configuration declaration forms, and processors that take care of: configuration file creation; configuration file parsing; command-line parameter parsing using getopt-long; basic GNU command-line parameter generation (--help, --usage, --version); automatic output generation for the above command-line parameters.
Guile-DSV is a GNU Guile module for working with the delimiter-separated values (DSV) data format. Guile-DSV supports the Unix-style DSV format and RFC 4180 style format. Also Guile-DSV includes a console program named dsv
that allows to view and process DSV data, including such operations as delimiter change, conversion from one DSV standard to another and printing the data as pseudographics tables.
Guile JsonLD is an implementation of the JsonLD (Json for Linked Data) API defined by the W3C for GNU Guile. It allows you to express links between data, in a way that is very similar to WikiData or RDF for instance. An object can have relations (in the form of an IRI) that relates it to one or more objects or strings, represented by a Json object or an IRI.
Guile-Reader is a simple framework for building readers for GNU Guile.
The idea is to make it easy to build procedures that extend Guile’s read procedure. Readers supporting various syntax variants can easily be written, possibly by re-using existing “token readers” of a standard Scheme readers. For example, it is used to implement Skribilo’s R5RS-derived document syntax.
Guile-Reader’s approach is similar to Common Lisp’s “read table”, but hopefully more powerful and flexible (for instance, one may instantiate as many readers as needed).
G-Golf (Gnome: (Guile Object Library for)) is a library for developing modern applications in Guile Scheme. It comprises a direct binding to the GObject Introspection API and higher-level functionality for importing Gnome libraries and making GObject classes (and methods) available in Guile's object-oriented programming system, GOOPS.
Note: Currently, when developing with G-Golf in guix shell
, there is a grafts bug in Guix. To avoid it, use Guix' --no-grafts
option. Guix packages that use wrap-program
are unaffected.
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.
guile-sundown is a library that renders Markdown as HTML. It supports many Markdown extensions including tables.
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.