Hi Mark, Mark H Weaver <m...@netris.org> skribis:
> l...@gnu.org (Ludovic Courtès) writes: > >> Mark H Weaver <m...@netris.org> skribis: [...] >>> * R7RS feature identifiers: r7rs, exact-closed, ratios, exact-complex, >>> ieee-float, full-unicode, windows, posix, unix, darwin, linux, bsd, >>> freebsd, solaris, i386, x86-64, ppc, sparc, jvm, clr, llvm, ilp32, >>> lp64, ilp64, big-endian, little-endian, guile, guile-2, guile-2.0 >> >> I wonder how these are specified. Does a *-kfreebsd-gnu build have >> ‘freebsd’? And ‘bsd’? Do *-gnu* have ‘linux’ defined, even when Linux >> isn’t used? Does Cygwin have ‘unix’? >> >> And above all: are people going to write #ifdef __linux__ish code when >> what they mean is #ifdef __GLIBC__ or even something different? > > Yes, this is a very good point, and one that should be raised with the > R7RS working group. The C library is usually far more relevant to user > code than the kernel. This strikes me as another instance of the > widespread confusion that "linux" is an operating system, when in fact > it is only a kernel. Exactly, and it goes beyond the “GNU slash Linux” issue, as I illustrated. > It would be a shame for this confusion to be codified into the R7RS. Indeed. If you’re following R7RS discussions, could you raise the issue? Thanks, Ludo’.