Skip to main content

SRFI

Builtin SRFI

This is a list of builin SRFI that don't require any action from user:

descriptionspec
Feature-based conditional expansion constructSRFI-0
Homogeneous numeric vector datatypesSRFI-4
Basic String PortsSRFI-6
Running Scheme Scripts on UnixSRFI-22
Error reporting mechanismSRFI-23
Basic Format StringsSRFI-28
Basic Syntax-rules ExtensionsSRFI-46
An interface to access environment variablesSRFI-98
Syntax parametersSRFI-139
Custom macro transformersSRFI-147
Version flagSRFI-176
Command lineSRFI-193

Included SRFI

Those SRFI are included as files that can be loaded into LIPS Scheme system:

descriptionspecsource
List LibrarySRFI-11.scm
AND-LET*: an AND with local bindings, a guarded LET* special formSRFI-22.scm
receive: Binding to multiple valuesSRFI-88.scm
#, external formSRFI-1010.scm
Notation for Specializing Parameters without CurryingSRFI-2626.scm
A more general cond clauseSRFI-6161.scm
Basic hash tablesSRFI-6969.scm
BoxesSRFI-111111.scm
Syntactic combiners for binary predicatesSRFI-156156.scm
Multiple-value boxesSRFI-195195.scm
Procedures and Syntax for Multiple ValuesSRFI-210210.scm
Evaluating expressions in an unspecified orderSRFI-236236.scm
Applicative syntaxSRFI-239239.scm
GensymSRFI-258258.scm

On the Web you can use this code to load above SRFI:

(load "https://cdn.jsdelivr.net/npm/lips@beta/lib/srfi/<NUMBER>.scm")

In NodeJS you can use this code:

(load "<LIPS PATH>/lib/srfi/<number>.scm")

Future plans

On devel branch there is a way to load those SRFI with @lips marker instead of full path. The final version LIPS 1.0 will most likely include some mechanism to load SRFI as R7RS libraries.