Guile reference manual
official Guile tutorial
Structure and Interpretation of Computer Programs (SICP)
The Little Schemer
"Learn Scheme in 15 minutes"
guile-tutorial
Guile Hacker Handbook
The Scheme Programming Language
Macros in the GNU Guile reference manual
Writing Hygienic Macros in Scheme with Syntax-Case
Community Scheme Wiki about macros
A Scheme Syntax-Rules Primer
Macro-by-Example: Deriving Syntactic Transformations from their Specifications
wikibooks.org about macros
Advanced Scheme Techniques - Some Naughty Bits
C2 Wiki Scheme Macro Examples
JRM's Syntax-rules Primer for the Merely Eccentric
Scheme Macros I: Modules
Writing Macros in Continuation-Passing Style
Low- and high-level macro programming in Scheme
Applicative syntax-rules: macros that compose better
Chicken Scheme Wiki about ck-macros
A Schemer's Introduction to Monads
A Schemer’s View of Monads - Partial Draft
Monadic Programming in Scheme
IRC
guile-irc
IRC
Cunning Bot
description:
Cunning Bot is a command-oriented IRC bot written in Guile Scheme.
(https://github.com/cadrspace/cunning-bot/blob/cadrobot/README)
git repo: https://github.com/cadrspace/cunning-bot
guile-zlib
GNU Guile-CV
description:
Guile-CV - Image Processing and Analysis in Guile - is a Computer Vision functional programming library for the Guile Scheme language.
Guile-CV is based on Vigra (Vision with Generic Algorithms), enhanced with additional algorithms (Image Textures, Delineate, Reconstruction and many more), all accessible through a nice, clean and easy to use high level API.
Guile-CV is natively multi-threaded, and takes advantage of multiple cores, using high-level and fine grained application-level parallelism constructs available in Guile, based on its support to POSIX threads.
guile-config
guile-gcrypt
description:
Guile-Gcrypt provides a Guile 3.x/2.x interface to a subset of the GNU
Libgcrypt crytographic library, which is itself used by the GNU Privacy Guard (GPG).
Guile-Gcrypt 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.
guile-dbi
guile-squee
guile-dbd-postgresql
guile-dbi
which is used for dealing with the Postgres side of things.guile-sqlite3
guile-dbd-sqlite3
guile-dbi
which is used for dealing with the Sqlite3 side of things.guile-dbd-mysql
guile-dbi
which is used for dealing with the MySQL side of things.guile-redis
guile-couchdb
WiredTiger (http://www.wiredtiger.com/
guile-wiredtiger
guile-sparql
: https://github.com/roelj/guile-sparql
sparqling-genomics
: https://github.com/UMCUGenetics/sparqling-genomics
nomunofu
pdfs
fectors
guile-rdf
guile-lens
copernic
scheme-bytestructures
description:
[…] 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 ours works on bytevectors which are an abstraction over raw memory in Scheme. The system is in fact more powerful than the C type system, elevating types to first-class status.
guile-newra
Treaps
description:
An ordered dictionary data structure, based on randomized search trees (treaps) by Seidel and Aragon. Compared to red-black trees, treap is simpler and more elegant, and can get by without sentinels.
guile-studio
description:
Racket has Dr Racket. Guile has … Emacs? 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. […]
(https://git.elephly.net/gitweb.cgi?p=software/guile-studio.git;a=blob;f=README.org;hb=HEAD)
guile-udev
:
metabash
GNU Mailutils ??? (https://mailutils.org/)
guile-email
: https://guile-email.systemreboot.net/
guile-a-sync
GNU Guile standard library FFI
ffi-helper
from NYACC
guile-json
guile-csv
guile-dsv
guile-commonmark
guile-jpeg
: a library for parsing JPEG files
*
guile-ics
torrent
sdupes
, duplicate file detection
StayAlive
dryads-wake
description:
Dryads Wake is a game of dialogue and choices. (https://hg.sr.ht/~arnebab/dryads-wake)
sparqling-genomics
description:
This project provides programs to extract RDF triplets from commonly used file formats in genomics. It also provides a web-based environment to explore the RDF triplets once inserted in a triple store.
usage example: https://github.com/UMCUGenetics/sparqling-genomics/blob/dc5fea515c30aa26ff60b77911438689473d125b/web/ldap/authenticate.scm.in#L148
guile-sdl
guile-sdl2
guile-opengl
guile-cairo
guile-jpeg
: a library for parsing JPEG files
guile-cv
guile-gi
guile-gnome
guile-gtk
guile-aspell
guile-logging
SysLog proposal
logging module of sparqling-genomics
sparqling-genomics
uses internally.decision tree
guile-ml
guile-snowball-stemmer
AIscm
description:
AIscm is a Guile extension for numerical arrays and tensors. Performance is achieved by using the LLVM JIT compiler.
guile-for-loops
description:
A re-implementation of a large-ish chunk of rackets for-macros. It is mostly compatible with racket's macros, with the largest omission being the body-or-break clause and some of the sequence iterators (like in-cycle, which can be covered by circular lists). There are other differences of course, like for/foldr not being on par feature-wise, and all the nicities you get by having a generic sequence interfce.
[…]
megacut
macro:
description:
This is a clojure-like lambda shorthand for guile. The macro is called megacut (which is a bad name, since it is not much like cut).
(https://hg.sr.ht/~bjoli/megacut/browse/readme.txt?rev=75caf96aa4a9282d489230fe56fff4f1aa5e2564)
Documentation for Scheme Syntax Extension Packages in SLIB
guile-zmq
guile-simple-zmq
Guile's standard library networking module
guile-curl
guile-ssh
GNU Serveez
serveez-mg
standard library futures
description:
[…] a construct for fine-grain parallelism. A future is a wrapper around an expression whose computation may occur in parallel with the code of the calling thread, and possibly in parallel with other futures. Like promises, futures are essentially proxies that can be queried to obtain the value of the enclosed expression […]
guile-fibers
description:
Concurrent ML-like concurrency for Guile
standard library parallel forms
guile-fibers
instead.stis-parser
nyacc
: Not Yet Another Compiler Compiler
standard library PEG parsing
description:
Parsing Expression Grammars (PEGs) are a way of specifying formal languages for text processing.
(https://www.gnu.org/software/guile/manual/html_node/PEG-Parsing.html)
guile-plotutils
guile-xcb
guile-msgpack
description:
This is a GNU Guile library implementing the MessagePack data serialisation format. It allows you to serialise (pack) and de-serialise (unpack) Scheme objects to and from binary data according to the MessagePack format.
(https://gitlab.com/HiPhish/guile-msgpack/-/blob/master/README.rst)
TaylanUB/scheme-srfis
guile-raw-strings
guile-colorized
GNU Guile-RPC
guile-xmlrpc
:
description:
guile-xmlrpc is an XMLRPC module for Guile. Guile already has the wonderful sxml module that allows XML document creation and parsing. guile-xmlrpc goes one step further and combines sxml with some macros and procedures that simplifies even more the creation and parsing of XMLRPC documents.
(https://github.com/aconchillo/guile-xmlrpc/blob/master/README.org)
manual: (readme file in git repo)
GNU Scientific Library (GSL)
Matrix multiplication
guile-ffi-cblas
Fast Fourier Transformation
guile-ffi-fftw
by lloda
guile-ffi-fftw
by Mikael Djurfeldt
Symbolic mathematics
guile-scmutils
description:
A port of the scmutils package for symbolic mathematics from mit scheme to guile, in an effort to make scmutils and the examples from the Structure and Interpretation of Classical Mechanics available on a wider variety of architectures/operating systems.
Guile implementation of symbolic mathematics shown in SICP
guix-kernel
guile-kernel
babelia
description:
Wanna be search engine with federation support
guile-ncurses
SRFI-64 (https://srfi.schemers.org/srfi-64/srfi-64.html)
srfi-64-driver
guile-testing
guile-tap
scm-test-tap
guile-git
guile-semver
Guile's standard library's web module for dealing with web stuff:
Guile's standard library's web server:
GNU Artanis web application frameweork
SPH web app
tekuti
JSON
guile-json
guile-www
guile-webutils
guile-html
description:
A tiny module to make it less annoying to make and write HTML files using SXML. Read the code!
Authorization and authentication
guile-oauth
guile-jwt
guile-haunt
SPH static website generator
guile-mastodon
scheme-todomvc
:
guile-web-driver
guile-wm
guile-syntax-highlight
guile-lib
description:
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". […]
Spells
description:
Spells is a collection of R6RS libraries providing features beyond R6RS in a uniform way across supported implementations.
documentation: http://rotty.xx.vu/software/spells/ (unfortunately 404 currently)
SPH website:
Guile 100
description:
This is the repository for the Guile 100 Programs project. This is a collaborative effort to create a set of examples on how Guile might be used for real-world problems.
git repo: https://github.com/spk121/guile100/
website: http://www.lonelycactus.com/guile100/html/index.html
minikanren
guile.vim
description:
This plugin extends Vim's Scheme support to include the additions to the language provided by the GNU Guile implementation. The plugin automatically detects whether a Scheme file is a Guile file and adds syntax highlighting for Guile's special forms.
(https://gitlab.com/HiPhish/guile.vim/-/blob/master/README.rst)
repl.nvim
description:
REPL.nvim bring REPL support to Nvim! Use the built-in REPLs, add your own, or change the existing ones. Change settings in your init.vim or on the fly, make them global or local, use the existing ones or make your own.
(https://gitlab.com/HiPhish/repl.nvim/-/blob/master/README.rst)
TODO: Emacs Guile support
TODO: other editors support
guile-hall
homebrew-guile
: https://github.com/aconchillo/
guile-debbugs
GUIX package search
^guile-
to find many Guile libraries and projects.guildhall
Akku
description:
Akku.scm is a language package manager for Scheme. It grabs hold of code and vigorously shakes it until it behaves properly.
SPH lib, collection of Guile libraries
C2 Wiki Category Scheme
C2 Wiki Guile Scheme
C2 Wiki Scheme Language
Community Scheme Wiki
SICP solutions
description:
A SICP Study Guide With Exercise Solutions in Guile & Emacs Lisp
This category is still empty. Help filling it with interesting GNU Guile related videos, talks or presentations!