[updated scheme-catalogs doc atsmyles@earthlink.net**20100702204809] hunk ./docs/scheme-catalog.html 22 -
R6RS provides a facility to define libraries. However it leaves unspecified where to find the library to load when a top level program references it. SRFI 103 attempts to codify how to find a library file on a filesystem. However, it sufferes from the following limitations: +
R6RS provides a facility to define libraries. However it leaves unspecified where to find the library to load when a top level program references it. SRFI 103 attempts to codify how to find a library file on a filesystem. However, it suffers from the following limitations: hunk ./docs/scheme-catalog.html 40 +
Let's start with this example
+ ++ (catalog + (library (rnrs io ports) + (versions + ((6) + (requires gambit-binary) + "file:/Users/asmyles8440/.gambit/lib/rnrs-io-ports-v-6.o1" + (@ (dynlib #t))) + ((6) + "file:///Users/asmyles8440/Documents/projects/r6gambit/libs/rnrs/io.scm#0"))) + (library (rnrs io simple) + (versions + ((6) + (requires gambit-binary) + "file:/Users/asmyles8440/.gambit/lib/rnrs-io-simple-v-6.o1" + (@ (dynlib #t))) + ((6) + "file:///Users/asmyles8440/Documents/projects/r6gambit/libs/rnrs/io.scm#1")))) ++ +All scheme catalogs start with the following form: + +
(catalog library ...)
+
+(library (versions ) (@ (name value) ...))
+(versions ( requirements uri (@ (name value) ...)) ...)
+