6

I find the Common Lisp HyperSpec to be useful as a sort of man pages for the Common Lisp programming language.

Is there a Scheme equivalent covering either the R7RS or R5RS standard (or for that matter R6RS)?

I am aware of the PDFs of the R5RS and R7RS standards, but they are not as useful in searching, on the fly, for the definition and implementation of particular commands.

haziz
  • 12,994
  • 16
  • 54
  • 75
  • 1
    I'm skeptical how much of use it would be, since a lot of stuff is implementation specific (though hopefully it will change with r7rs large release) – Coderino Javarino Jan 28 '19 at 05:02
  • 1
    Scheme Requests for Implementation (SRFI) contain implementations. https://srfi.schemers.org/ – Flux Jan 28 '19 at 20:28
  • 1
    The PDF versions of R6RS and R7RS contain clickable hyperlinks. Here are copies of both the official (ratified) and errata-corrected PDFs: https://github.com/schemedoc/rnrs-with-errata – Lassi Aug 30 '19 at 10:40
  • The R6RS standard is big enough that it's split into four PDFs. Mostly you just need to consult the main one (which defines language syntax and semantics) and the "libraries" one (which defines the standard libraries that all implementations have). – Lassi Aug 30 '19 at 10:42
  • There are also HTML versions of the four R6RS documents readable on the web at http://www.r6rs.org/. Each document is split into many small pages like CLHS. There are hyperlinks like in the PDFs. The PDFs may actually be easier to read (and are certainly typeset nicer) than that HTML copy. – Lassi Aug 30 '19 at 10:45
  • 1
    We are working hard on cross-implementation compatibility but it will take a while (a year or two) to be at the comfortable service level that newbies expect of popular languages. Comparing language implementations in ski-slope terms, Scheme is still a red (advanced) slope - there is no blue/green (easy) version yet. As for the standards, R6RS and R7RS are unfortunately irreconcilable. We are doing our best to map out useful ways for R6RS and R7RS code to interoperate, and there has been some success (https://akkuscm.org/ can auto-convert R7RS packages to R6RS!) but it will take a while. – Lassi Aug 30 '19 at 10:49
  • As for R5RS, it's a classic but not really relevant anymore. R7RS is its spiritual successor and whenever someone thinks about using "R5RS" nowadays you should just mentally substitute "R7RS" :) The handful of remaining R5RS-based implementations are moving towards R6RS and/or R7RS support. – Lassi Aug 30 '19 at 10:59
  • Why did you say R5 and not R6rs? – alinsoar Jul 09 '21 at 11:46
  • @CoderinoJavarino Where can I find the differences between R7small and R7large? I am getting familiar with the small specs but never saw large specs... – alinsoar Jul 09 '21 at 13:00
  • @alinsoar large is still wip; you can see a list of potential inclusions here https://github.com/johnwcowan/r7rs-work/blob/master/ColorDockets.md – Coderino Javarino Jul 09 '21 at 13:39
  • @CoderinoJavarino trying to use scheme in commercial purpose I am afraid they will corrupt the language. – alinsoar Jul 09 '21 at 14:18

0 Answers0