SRFI logo

Scheme Requests for Implementation

Since 1998, the Scheme Requests for Implementation (SRFI) process has been helping Scheme users write portable, useful Scheme code. We write concrete, detailed proposals and sample implementations for libraries and other additions to the Scheme language, and we encourage Scheme implementors to adopt them.

If you're interested in reading existing proposals, writing a new one (template), providing feedback on a draft proposal, helping with a sample implementation, or reporting a bug, please read about our process, skim our FAQ, and subscribe to some of our mailing lists, including srfi-announce and srfi-discuss.

In addition to mailing lists about SRFIs, we host the Scheme Topics mailing lists, which are for discussing specific subjects that we hope may lead to SRFIs and other cooperative work, but which are currently not ready for specific proposals through the SRFI process. So far, we have these lists: schemecomm, schemedoc, schemepersist, and schemeweb.

Everyone is welcome to join our discussions. Please subscribe here. (You must subscribe in order to post messages.)

The SRFIs

History

Every SRFI is hosted on Github, but if you'd like a complete archive of all SRFI documents and code, please download srfi.tgz.

The SRFI process has been important to the development of some of the official Scheme standards, including R6RS and R7RS. It has been running since 1998, and there have been many different editors.

At the 2018 Scheme Workshop, SRFI editor Arthur A. Gleckler gave a talk entitled Growing Schemes: Twenty Years of Scheme Requests for Implementation (YouTube, PDF) on SRFI, its history, and future plans.

Here's a graph of the total number of SRFIs since SRFI 0 was published on 1999/1/5:


Here is our privacy statement.

If you have any general questions about this site, please contact the SRFI editors.