Guile is a programming language

Guile is designed to help programmers create flexible applications that can be extended by users or other programmers with plug-ins, modules, or scripts.
With Guile you can create applications and games for the desktop, the Web, the command-line, and more.
Code examples
Guile is an implementation of the Scheme programming language, supporting the Revised5 and most of the Revised6 language reports, as well as many SRFIs. It also comes with a library of modules that offer additional features, like an HTTP server and client, XML parsing, and object-oriented programming.
;;; Hello world program (define name "World") (display (string-append "Hello " name "!")) (newline)
Hello world program
Define a variable called name
, join the texts Hello
, name
, and !
together to form the greeting Hello world!
, and display it on the screen.
;;; Show current date and time (use-modules (srfi srfi-19)) (display (date->string (current-date) "~A, ~B ~e ~Y ~H:~S")) (newline)
Importing modules
Import the srfi-19 module and use its functions to display the current date and time in the format WEEKDAY, MONTH MONTHDAY YEAR HOUR:SECOND.
;;; Hello HTTP server (use-modules (web server)) (define (my-handler request request-body) (values '((content-type . (text/plain))) "Hello World!")) (run-server my-handler)
Hello HTTP server
Run a Web server that will return a response with the text "Hello World!" to every request sent by HTTP clients. Open http://localhost:8080/ to see the result.
Guile is an extension language platform

Guile contains an efficient compiler and virtual machine. It can be used out of the box to write programs in Scheme, or can easily be integrated with C and C++ programs.
Guile is the GNU Ubiquitous Intelligent Language for Extensions, and the official extension language of the GNU project.
Extend applications

In addition to Scheme, Guile includes compiler front-ends for The GNU debugger June 24, 2024 We are pleased to finally announce the release of GNU Guile 3.0.10!
This release is mainly a bug-fix release, though it does include a
number of new features:Better ability… January 25, 2023 We are pleased to announce the release of GNU Guile 3.0.9! This release
fixes a number of bugs and adds several new features, among which:New bindings for POSIX functionality,… February 11, 2022 We are delighted to announce the release of GNU Guile 3.0.8. This
release adds support for cross-module inlining: allowing small functions
and constants defined in one module…GDB
News
GNU Guile 3.0.10 released
GNU Guile 3.0.9 released
GNU Guile 3.0.8 released