Libraries

This page lists free software projects that use or enhance the current stable version of Guile. To have your project listed here or to contribute, ask for instructions on the guile-user mailing list.

8sync

Guile 2.2

GNU 8sync (pronounced "eight-sync") is an asynchronous programming library for GNU Guile based on the actor model.

Note that 8sync is only available for Guile 2.2.

License: LGPL 3+

aisleriot

Guile 2.2

Aisleriot (also known as Solitaire or sol) is a collection of card games which are easy to play with the aid of a mouse.

License: GPL 3+

alive

Guile 2.0

GNU Alive sends periodic pings to a server, generally to keep a connection alive.

License: GPL 3+

artanis

Guile 2.2

GNU Artanis is a web application framework written in Guile Scheme. A web application framework (WAF) is a software framework that is designed to support the development of dynamic websites, web applications, web services and web resources. The framework aims to alleviate the overhead associated with common activities performed in web development. Artanis provides several tools for web development: database access, templating frameworks, session management, URL-remapping for RESTful, page caching, and more.

License: GPL 3+, LGPL 3+

autogen

Guile 2.0

AutoGen is a program to ease the maintenance of programs that contain large amounts of repetitive text. It automates the construction of these sections of the code, simplifying the task of keeping the text in sync. It also includes an add-on package called AutoOpts, which is specialized for the maintenance and documentation of program options.

License: GPL 3+

beast

Guile 1.8

Beast is a music composition and modular synthesis application. It supports a wide range of standards in the field, such as MIDI, various audio file formats and LADSPA modules. It allows for multitrack editing, real-time synthesis, 32bit audio rendering, precise timing down to sample granularity, on-demand and partial loading of wave files, on the fly decoding, stereo mixing, FFT scopes, MIDI automation and full scriptability in Scheme.

License: GPL 3+

chickadee

Guile 2.2

Chickadee is a game development toolkit for Guile Scheme built on top of SDL2 and OpenGL. Chickadee aims to provide all the features that parenthetically inclined game developers need to make 2D (and eventually 3D) games in Scheme, such as:

  1. extensible, fixed-timestep game loop

  2. OpenGL-based rendering engine

  3. keyboard, mouse, controller input

  4. REPL-driven development model

License: GPL 3+

cuirass

Guile 2.2

Cuirass is a continuous integration tool using GNU Guix. It is intended as a replacement for Hydra.

License: GPL 3+

denemo

Guile 2.0

GNU Denemo is a music notation editor that provides a convenient interface to the powerful music engraving program Lilypond. Music can be typed in using the computer keyboard, played in using a MIDI keyboard, or even input via a microphone connected to the sound card. The final product is publication-quality music notation that is continuously generated in the background while you work.

License: GPL 3+

dico

Guile 2.2

GNU Dico implements a flexible dictionary server and client according to RFC 2229 (DICT Server). It is able to access any database available, regardless of format, thanks to its modular structure. New modules may be written in C, Guile or Python. Dico also includes a command-line client, which may be used to query remote dictionary databases.

License: GPL 3+

emacs-geiser

Guile 2.2

Geiser is a collection of Emacs major and minor modes that conspire with one or more Scheme implementations to keep the Lisp Machine Spirit alive. The continuously running Scheme interpreter takes the center of the stage in Geiser. A bundle of Elisp shims orchestrates the dialog between the Scheme implementation, Emacs and, ultimately, the schemer, giving them access to live metadata.

License: Modified BSD

emacs-guix

Guile 2.2

Emacs-Guix provides a visual interface, tools and features for the GNU Guix package manager. Particularly, it allows you to do various package management tasks from Emacs. To begin with, run M-x guix-about or M-x guix-help command.

License: GPL 3+

fdisk

Guile 1.8

GNU fdisk provides a GNU version of the common disk partitioning tool fdisk. fdisk is used for the creation and manipulation of disk partition tables, and it understands a variety of different formats.

License: GPL 3+

fibers

Guile 2.2

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.

License: LGPL 3+

freehdl

Guile 2.2

FreeHDL is a compiler/simulator suite for the hardware description language VHDL. VHDL'93 as well as VHDL'87 standards are supported.

License: GPL 2+, LGPL 2.0+

freetalk

Guile 2.0

GNU Freetalk is a command-line Jabber/XMPP chat client. It notably uses the Readline library to handle input, so it features convenient navigation of text as well as tab-completion of buddy names, commands and English words. It is also scriptable and extensible via Guile.

License: GPL 3+

g-wrap

Guile 2.2

G-Wrap is a tool and Guile library for generating function wrappers for inter-language calls. It currently only supports generating Guile wrappers for C functions. Given a definition of the types and prototypes for a given C interface, G-Wrap will automatically generate the C code that provides access to that interface and its types from the Scheme level.

License: LGPL 2.1+

gdb

Guile 2.0

GDB is the GNU debugger. With it, you can monitor what a program is doing while it runs or what it was doing just before a crash. It allows you to specify the runtime conditions, to define breakpoints, and to change how the program is running to try to fix bugs. It can be used to debug programs written in C, C++, Ada, Objective-C, Pascal and more.

License: GPL 3+

geda-gaf

Guile 2.0

Gaf stands for “gschem and friends”. It is a subset of the entire tool suite grouped together under the gEDA name. gEDA/gaf is a collection of tools which currently includes: gschem, a schematic capture program; gnetlist, a netlist generation program; gsymcheck, a syntax checker for schematic symbols; gattrib, a spreadsheet programm that manipulates the properties of symbols of a schematic; libgeda, libraries for gschem gnetlist and gsymcheck; gsch2pcb, a tool to forward annotation from your schematic to layout using PCB; some minor utilities.

License: GPL 2+

gnubik

Guile 2.0

GNUbik is a puzzle game in which you must manipulate a cube to make each of its faces have a uniform color. The game is customizable, allowing you to set the size of the cube (the default is 3x3) or to change the colors. You may even apply photos to the faces instead of colors. The game is scriptable with Guile.

License: GPL 3+

gnucash

Guile 2.2

GnuCash is personal and professional financial-accounting software. It can be used to track bank accounts, stocks, income and expenses, based on the double-entry accounting practice. It includes support for QIF/OFX/HBCI import and transaction matching. It also automates several tasks, such as financial calculations or scheduled transactions.

License: GPL 3+

gnutls

Guile 2.2Guile 2.0

GnuTLS is a secure communications library implementing the SSL, TLS and DTLS protocols. It is provided in the form of a C library to support the protocols, as well as to parse and write X.5009, PKCS 12, OpenPGP and other required structures.

License: LGPL 2.1+

gnutls-dane

Guile 2.2

GnuTLS is a secure communications library implementing the SSL, TLS and DTLS protocols. It is provided in the form of a C library to support the protocols, as well as to parse and write X.5009, PKCS 12, OpenPGP and other required structures.

License: LGPL 2.1+

graphviz

Guile 2.0

Graphviz is a graph visualization tool suite. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It has important applications in networking, bioinformatics, software engineering, database and web design, machine learning, and in visual interfaces for other technical domains.

License: EPL 1.0

guildhall

Guile 2.0

Guildhall is a package manager written for Guile Scheme. A guild is an association of independent craftspeople. A guildhall is where they meet. This Guildhall aims to make a virtual space for Guile wizards and journeyfolk to share code.

On a practical level, Guildhall lets you share Scheme modules and programs over the internet, and install code that has been shared by others. Guildhall can handle dependencies, so when a program requires several libraries, and each of those has further dependencies, all of the prerequisites for the program can be installed in one go.

License: GPL 3+

guile-aa-tree

Guile 2.2

This package provides an implementation of AA trees, a self-balancing binary tree data structure, for Guile. It ensure O(log n) worst case performance for core operations. The module provides non-mutating insert, delete, and search operations, with support for convenient nested tree operations.

License: GPL 3+

guile-aspell

Guile 2.2

guile-aspell is a Guile Scheme library for comparing a string against a dictionary and suggesting spelling corrections.

License: GPL 3+

guile-bash

Guile 2.0

Guile-Bash provides a shared library and set of Guile modules, allowing you to extend Bash in Scheme. Scheme interfaces allow you to access the following aspects of Bash:

  • aliases;

  • setting and getting Bash variables;

  • creating dynamic variables;

  • creating Bash functions with a Scheme implementation;

  • reader macro for output capturing;

  • reader macro for evaluating raw Bash commands.

To enable it, run:

enable -f ~/.guix-profile/lib/bash/libguile-bash.so scm

and then run scm example.scm.

License: GPL 3+

guile-cairo

Guile 2.2

Guile-Cairo wraps the Cairo graphics library for Guile Scheme. Guile-Cairo is complete, wrapping almost all of the Cairo API. It is API stable, providing a firm base on which to do graphics work. Finally, and importantly, it is pleasant to use. You get a powerful and well-maintained graphics library with all of the benefits of Scheme: memory management, exceptions, macros, and a dynamic programming environment.

License: LGPL 3+

guile-charting

Guile 2.2

Guile-Charting is a Guile Scheme library to create bar charts and graphs using the Cairo drawing library.

License: LGPL 2.1+

guile-colorized

Guile 2.2

Guile-colorized provides you with a colorized REPL for GNU Guile.

License: GPL 3+

guile-commonmark

Guile 2.2Guile 2.0

guile-commonmark is a library for parsing CommonMark, a fully specified variant of Markdown. The library is written in Guile Scheme and is designed to transform a CommonMark document to SXML. guile-commonmark tries to closely follow the CommonMark spec, the main difference is no support for parsing block and inline level HTML.

License: LGPL 3+

guile-config

Guile 2.2

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.

License: GPL 3+

guile-curl

Guile 2.2

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.

License: GPL 3+

guile-daemon

Guile 2.2

Guile-Daemon is a small Guile program that loads your initial configuration file, and then reads and evaluates Guile expressions that you send to a FIFO file.

License: GPL 3+

guile-dbi

Guile 2.2

guile-dbi is a library for Guile that provides a convenient interface to SQL databases. Database programming with guile-dbi is generic in that the same programming interface is presented regardless of which database system is used. It currently supports MySQL, Postgres and SQLite3.

License: GPL 2+

guile-debbugs

Guile 2.2

This package provides a Guile library to communicate with a Debbugs bug tracker's SOAP service, such as https://bugs.gnu.org.

License: GPL 3+

guile-dsv

Guile 2.2

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 format.

License: GPL 3+

guile-gcrypt

Guile 2.2

Guile-Gcrypt provides a Guile 2.x 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.

License: GPL 3+

guile-gdbm

Guile 2.2Guile 2.0

Guile bindings to the GDBM key-value storage system, using Guile's foreign function interface.

License: GPL 3+

guile-git

Guile 2.2Guile 2.0

This package provides Guile bindings to libgit2, a library to manipulate repositories of the Git version control system.

License: GPL 3+

guile-gnome

Guile 2.2

Includes guile-clutter, guile-gnome-gstreamer, guile-gnome-platform (GNOME developer libraries), and guile-gtksourceview.

License: GPL 2+

guile-hall

Guile 2.2

Hall is a command-line application and a set of Guile libraries that allow you to quickly create and publish Guile projects. It allows you to transparently support the GNU build system, manage a project hierarchy & provides tight coupling to Guix.

License: GPL 3+

guile-ics

Guile 2.2

Guile-ICS is an iCalendar (RFC5545) format parser library written in pure Scheme. The library can be used to read and write iCalendar data.

The library is shipped with documentation in Info format and usage examples.

License: GPL 3+

guile-json

Guile 2.2Guile 2.0

Guile-JSON supports parsing and building JSON documents according to the specification. These are the main features:

  • Strictly complies to specification.

  • Build JSON documents programmatically via macros.

  • Unicode support for strings.

  • Allows JSON pretty printing.

License: GPL 3+

guile-lib

Guile 2.2Guile 2.0

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".

License: GPL 3+

guile-ncurses

Guile 2.2

guile-ncurses provides Guile language bindings for the ncurses library.

License: LGPL 3+

guile-opengl

Guile 2.2

Guile-OpenGL is a library for Guile that provides bindings to the OpenGL graphics API.

License: LGPL 3+

guile-present

Guile 2.2

Guile-Present defines a declarative vocabulary for presentations, together with tools to render presentation documents as SVG or PDF. Guile-Present can be used to make presentations programmatically, but also includes a tools to generate PDF presentations out of Org mode and Texinfo documents.

License: LGPL 3+

guile-reader

Guile 2.2Guile 2.0

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).

License: GPL 3+

guile-redis

Guile 2.2Guile 2.0

Guile-redis provides a Scheme interface to the Redis key-value cache and store.

License: LGPL 3+

guile-rsvg

Guile 2.2

Guile-RSVG wraps the RSVG library for Guile, allowing you to render SVG images onto Cairo surfaces.

License: LGPL 2.1+

guile-sdl

Guile 2.2

Guile-SDL is a set of bindings to the Simple DirectMedia Layer (SDL). With them, Guile programmers can have easy access to graphics, sound and device input (keyboards, joysticks, mice, etc.).

License: GPL 3+

guile-sdl2

Guile 2.2

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.

License: LGPL 3+

guile-simple-zmq

Guile 2.2

This package provides a Guile programming interface to the ZeroMQ messaging library.

License: GPL 3+

guile-sjson

Guile 2.2

guile-sjson is a json reader/writer for Guile. It has a nice, simple s-expression based syntax.

License: LGPL 3+

guile-sparql

Guile 2.2

This package provides the functionality to query a SPARQL endpoint. Additionally, it provides an interface to write SPARQL queries using S-expressions.

License: GPL 3+

guile-sqlite3

Guile 2.2

This package provides Guile bindings to the SQLite database system.

License: GPL 3+

guile-ssh

Guile 2.2Guile 2.0

Guile-SSH is a library that provides access to the SSH protocol for programs written in GNU Guile interpreter. It is a wrapper to the underlying libssh library.

License: GPL 3+

guile-syntax-highlight

Guile 2.2

Guile-syntax-highlight is a general-purpose syntax highlighting library for GNU Guile. It can parse code written in various programming languages into a simple s-expression that can be converted to HTML (via SXML) or any other format for rendering.

License: LGPL 3+

guile-wiredtiger

Guile 2.2

This package provides Guile bindings to the WiredTiger ``NoSQL'' database. Various higher level database abstractions.

License: GPL 3+

guile-wm

Guile 2.2

Guile-WM is a simple window manager that's completely customizable—you have total control of what it does by choosing which modules to include. Included with it are a few modules that provide basic TinyWM-like window management, some window record-keeping, multi-monitor support, and emacs-like keymaps and minibuffer. At this point, it's just enough to get you started.

License: GPL 3+

guile-xcb

Guile 2.2

Guile-XCB implements the XCB protocol and provides all the tools necessary to write X client code in Guile Scheme without any external dependencies.

License: GPL 3+

guile-xosd

Guile 2.2

Guile-XOSD provides Guile bindings for libxosd, the X On Screen Display library.

License: GPL 3+

guix

Guile 2.2Guile 2.0

GNU Guix is a functional package manager for the GNU system, and is also a distribution thereof. It includes a virtual machine image. Besides the usual package management features, it also supports transactional upgrades and roll-backs, per-user profiles, and much more. It is based on the Nix package manager.

License: GPL 3+

gwl

Guile 2.2

This project provides two subcommands to GNU Guix and introduces two record types that provide a workflow management extension built on top of GNU Guix.

License: GPL 3+, AGPL 3+, SIL OFL 1.1

gzochi

Guile 2.2

gzochi is a framework for developing massively multiplayer online games. A server container provides services to deployed games, which are written in Guile Scheme, that abstract and simplify some of the most challenging and error-prone aspects of online game development: Concurrency, data persistence, and network communications. A very thin client library can be embedded to provide connectivity for client applications written in any language.

License: GPL 3+

haunt

Guile 2.2

Haunt is a static site generator written in Guile Scheme. Haunt features a functional build system and an extensible interface for reading articles in any format.

License: GPL 3+

haunt.dthompson

Guile 2.0

Haunt is a static site generator written in Guile Scheme. Haunt features a functional build system and an extensible interface for reading articles in any format.

License: GPL 3+

hpcguix-web

Guile 2.2

Hpcguix-web provides a web interface to the list of packages provided by Guix. The list of packages is searchable and provides instructions on how to use Guix in a shared HPC environment.

License: AGPL 3+

hydra

Guile 2.0

Hydra is a tool for continuous integration testing and software release that uses a purely functional language to describe build jobs and their dependencies.

License: GPL 3+

irregex

Guile 2.2Guile 2.0

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.

License: Modified BSD

jupyter-guile-kernel

Guile 2.2

This package provides a Guile 2.x kernel for the Jupyter Notebook. It allows users to interact with the Guile REPL through Jupyter.

License: GPL 3+

lepton-eda

Guile 2.0

Lepton EDA ia an electronic design automation (EDA) tool set forked from gEDA/gaf in late 2016. EDA tools are used for electrical circuit design, schematic capture, simulation, prototyping, and production. Lepton EDA includes tools for schematic capture, attribute management, bill of materials (BOM) generation, netlisting into over 20 netlist formats, analog and digital simulation, and printed circuit board (PCB) layout, and many other features.

License: GPL 2+

libchop

Guile 2.0

Libchop is a set of utilities and library for data backup and distributed storage. Its main application is chop-backup, an encrypted backup program that supports data integrity checks, versioning, distribution among several sites, selective sharing of stored data, adaptive compression, and more. The library itself implements storage techniques such as content-addressable storage, content hash keys, Merkle trees, similarity detection, and lossless compression.

License: GPL 3+

libctl

Guile 2.2

Libctl is a Guile-based library implementing flexible control files for scientific simulations.

License: GPL 2+

libfive

Guile 2.2

Libfive is a tool for programmatic computer-aided design (CAD). In libfive, solid models are defined as Scheme scripts, and there are no opaque function calls into the geometry kernel: everything is visible to the user. Even fundamental, primitive shapes are represented as code in the user-level language.

License: LGPL 2.1+, GPL 2+

lilypond

Guile 1.8

GNU LilyPond is a music typesetter, which produces high-quality sheet music. Music is input in a text file containing control sequences which are interpreted by LilyPond to produce the final document. It is extendable with Guile.

License: GPL 3+

mailutils

Guile 2.0

GNU Mailutils is a collection of programs for managing, viewing and processing electronic mail. It contains both utilities and server daemons and all operate in a protocol-agnostic way. The underlying libraries are also available, simplifying the addition of mail capabilities to new software.

License: GPL 3+, LGPL 3+

make

Guile 2.0

Make is a program that is used to control the production of executables or other files from their source files. The process is controlled from a Makefile, in which the developer specifies how each file is generated from its source. It has powerful dependency resolution and the ability to determine when files have to be regenerated after their sources change. GNU make offers many powerful extensions over the standard utility.

License: GPL 3+

mcron

Guile 2.2

GNU Mcron is a complete replacement for Vixie cron. It is used to run tasks on a schedule, such as every hour or every Monday. Mcron is written in Guile, so its configuration can be written in Scheme; the original cron format is also supported.

License: GPL 3+

meep

Guile 2.0

Meep is a finite-difference time-domain (FDTD) simulation software package developed at MIT to model electromagnetic systems.

License: GPL 2+

mes

Guile 2.2

GNU Mes [Maxwell Equations of Software] aims to create full source bootstrapping for GuixSD. It consists of a mutual self-hosting [close to Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in [Guile] Scheme.

License: GPL 3+

miniadapton

Guile 2.2

This package provides a complete Scheme implementation of miniAdapton, which implements the core functionality of the Adapton system for incremental computation (also known as self-adjusting computation). Like Adapton, miniAdapton allows programmers to safely combine mutation and memoization. miniAdapton is built on top of an even simpler system, microAdapton. Both miniAdapton and microAdapton are designed to be easy to understand, extend, and port to host languages other than Scheme.

License: Expat

minikanren

Guile 2.2Guile 2.0

MiniKanren is a relational programming extension to the Scheme programming Language, written as a smaller version of Kanren suitable for pedagogical purposes. It is featured in the book, The Reasoned Schemer, written by Dan Friedman, William Byrd, and Oleg Kiselyov.

This is Ian Price's r6rs packaged version of miniKanren, which deviates slightly from miniKanren mainline.

See http://minikanren.org/ for more on miniKanren generally.

License: Expat

mpb

Guile 2.2

MIT Photonic-Bands (MPB) computes definite-frequency eigenstates (harmonic modes) of Maxwell's equations in periodic dielectric structures for arbitrary wavevectors, using fully-vectorial and three-dimensional methods.

License: GPL 2+

mu

Guile 2.2

Mu is a tool for dealing with e-mail messages stored in the Maildir-format. Mu's purpose in life is to help you to quickly find the messages you need; in addition, it allows you to view messages, extract attachments, create new maildirs, and so on.

License: GPL 3+

nlopt

Guile 2.0

NLopt is a library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms.

License: LGPL 2.1+

nyacc

Guile 2.2

NYACC is an LALR(1) parser generator implemented in Guile. The syntax and nomenclature should be considered not stable. It comes with extensive examples, including parsers for the Javascript and C99 languages.

License: GPL 3+, LGPL 3+

pfds

Guile 2.2

This package provides purely functional data structures written in R6RS Scheme and compiled for Guile. It has been tested with Racket, Guile 2, Vicare Scheme and IronScheme. Right now it contains:

  • queues

  • deques

  • bbtrees

  • sets

  • dlists

  • priority search queues (PSQs)

  • finger trees

  • sequences

  • heaps

  • hash array mapped tries (HAMTs).

License: Modified BSD

rcas-web

Guile 2.2

This package provides a simple web interface for the RNA-centric annotation system (RCAS).

License: AGPL 3+

scheme-bytestructures

Guile 2.2Guile 2.0

Guile bytestructures offers a system imitating the type system of the C programming language, to be used on bytevectors. C's type system works on raw memory, and Guile works on bytevectors which are an abstraction over raw memory. It's also more powerful than the C type system, elevating types to first-class status.

License: GPL 3+

serveez

Guile 2.0

GNU Serveez is a server framework providing the routines necessary to easily implement IP-based servers in your application. It demonstrates aspects of network programming in a portable manner, making it convenient for both simplifying the process of adding a server to your application or for learning about how network services work. Several example servers are provided already, such as an HTTP server and an IRC server.

License: GPL 3+

shepherd

Guile 2.2

The GNU Shepherd is a daemon-managing daemon, meaning that it supervises the execution of system services, replacing similar functionality found in typical init systems. It provides dependency-handling through a convenient interface and is based on GNU Guile.

License: GPL 3+

shroud

Guile 2.0

Shroud is a simple secret manager with a command line interface. The password database is stored as a Scheme s-expression and encrypted with a GnuPG key. Secrets consist of an arbitrary number of key/value pairs, making Shroud suitable for more than just password storage. For copying and pasting secrets into web browsers and other graphical applications, there is xclip integration.

License: GPL 3+

skribilo

Guile 2.2

Skribilo is a free document production tool that takes a structured document representation as its input and renders that document in a variety of output formats: HTML and Info for on-line browsing, and Lout and LaTeX for high-quality hard copies.

The input document can use Skribilo's markup language to provide information about the document's structure, which is similar to HTML or LaTeX and does not require expertise. Alternatively, it can use a simpler, “markup-less” format that borrows from Emacs' outline mode and from other conventions used in emails, Usenet and text.

Lastly, Skribilo provides Guile Scheme APIs.

License: GPL 3+

sly

Guile 2.2

Sly is a 2D/3D game engine written in Guile Scheme. Sly features a functional reactive programming interface and live coding capabilities.

License: GPL 3+

srt2vtt

Guile 2.0

srt2vtt converts SubRip formatted subtitles to WebVTT format for use with HTML5 video.

License: GPL 3+

swig

Guile 2.0

SWIG is an interface compiler that connects programs written in C and C++ with languages such as Perl, Python, Ruby, Scheme, and Tcl. It works by taking the declarations found in C/C++ header files and using them to generate the wrapper code that scripting languages need to access the underlying C/C++ code. In addition, SWIG provides a variety of customization features that let you tailor the wrapping process to suit your application.

License: GPL 3+

weechat

Guile 2.0

WeeChat (Wee Enhanced Environment for Chat) is an Internet Relay Chat (IRC) client, which is designed to be light and fast. The client uses a curses frontend, and there are remote interfaces for Web, Qt, Android, and Emacs.

Everything in WeeChat can be done with the keyboard, though it also supports using a mouse. It is customizable and extensible with plugins and scripts.

License: GPL 3

wisp

Guile 2.2

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.

License: GPL 3+

xbindkeys

Guile 2.0

XBindKeys is a program that allows you to launch shell commands with your keyboard or your mouse under the X Window System. It links commands to keys or mouse buttons, using a configuration file. It's independent of the window manager and can capture all keyboard keys (ex: Power, Wake...). It optionally supports a Guile-based configuration file layout, which enables you to access all XBindKeys internals, so you can have key combinations, double clicks or timed double clicks take actions. Also all functions that work in Guile will work for XBindKeys.

License: GPL 2+

zile-on-guile

Guile 2.0

GNU Zile is a lightweight clone of the Emacs editor, and Zile-on-Guile is a variant of Zile that can be extended in Guile Scheme. Hitting M-C (or: Alt and C) brings up a Guile REPL from which interactive functions akin to those of Emacs can be invoked.

License: GPL 3+