On Tue, 2010-01-05 at 14:13 -0600, Eduardo Cavazos wrote: > The new document recommends the file extension 'r6rs-lib'. It also > recommends 'ikarus-r6rs-lib' for Ikarus libraries. > > So the SRFI is trying to support multiple dialects. There might also > someday be R7RS and R8RS. There's already Chibi and Chicken which have > their own library systems. So I guess your SRFI would call for > 'chibi-lib' and 'chicken-lib' in those cases. > > Let's say I keep my files in '~/scheme'. So '~/scheme/abc.sls' is the > library '(abc)' > > Is the idea that one can have multiple implementations of a library, one > for each dialect? I.e. have: > > ~/scheme/abc.r6rs-lib > ~/scheme/abc.r7rs-lib > ~/scheme/abc.chibi-lib > > so that various Scheme systems can find the appropriate library?
(Having different-dialect same-named libraries in the same directory is an intentional ability of the new design.) > If so, I'd like to mention that I wouldn't organize my libraries this > way (multiple dialects in the same tree). I'd have instead separate > library collections, one for each dialect. (I also organize different dialects in separate trees.) > Or is the SRFI trying to allow for Scheme systems which themselves > support multiple dialects? (Such systems could utilize extensions which specify the dialect, to know the dialect.) The idea to have precise extensions, such as 'r6rs-lib', arose so multiple dialects can all use the same "Scheme"-named environment variable. Otherwise, if the same extension is used, a file for one dialect could shadow the file for another, e.g.: SCHEME_LIB_PATH=/dialect-a:/dialect-b /dialect-a/foo.extension /dialect-b/foo.extension And then I realized it's an all-around better design. I explained the motivations for the changes to the extensions design at http://srfi.schemers.org/srfi-103/mail-archive/msg00087.html -- : Derick ----------------------------------------------------------------
