(www.reddit.com) SICP compatibility language : r/sicp

ROAM_REFS: https://www.reddit.com/r/sicp/comments/mf0j95/sicp_compatibility_language/

r/sicp

sdegabrielle

The best way to learn from SICP(or anything) is to do the exercises, and a great way to do the exercises in SICP with the minimum of distractions is to use the version of Scheme used by the book. The SICP compatibility language is one of the best ways to do this: https://docs.racket-lang.org/sicp-manual/

From the manual:

“The programs in the book (SICP) are written in (a subset of) the programming language Scheme.  As the years have passed the programming language Scheme has evolved.  The language #lang sicp provides you with a version of R5RS (the fifth revision of Scheme) changed slightly in order for programs in SICP to run as is.”  - [[https://docs.racket-lang.org/sicp-manual]]

To use the

SICP
language:

  1. install Racket at https://racket-lang.org
  2. Install the
    SICP
    package https://docs.racket-lang.org/sicp-manual/Installation.html
  3. use
    #lang sicp
    as the first line of your program.

*Included: the picture language used in SICP. *

(You can also use Racket libraries)

If you run into problems don't be afraid to ask questions on the Racket Slack or Racket Users mailing list. New learners are always welcome. (Many Racket users are also Emacs Lisp, Clojure, Common Lisp and Scheme users.)

Editor/IDE: You can use the SICP compatibility language with your preferred editor.

Local Graph

org-roam 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5 (www.reddit.com) SICP compatibility l... //www.reddit.com/r/sicp/ https://www.reddit.com/r/sicp/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//www.reddit.com/r/sicp/ //www.reddit.com/user/sdegabrielle/ https://www.reddit.com/user/sdegabrielle/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//www.reddit.com/user/sdegabrielle/ //docs.racket-lang.org/sicp-manual/ https://docs.racket-lang.org/sicp-manual/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//docs.racket-lang.org/sicp-manual/ //racket-lang.org/ https://racket-lang.org/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//racket-lang.org/ //docs.racket-lang.org/sicp-manual/Installation.html https://docs.racket-lang.org/sicp-manual/Installation.html 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//docs.racket-lang.org/sicp-manual/Installation.html //racket-slack.herokuapp.com/ https://racket-slack.herokuapp.com/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//racket-slack.herokuapp.com/ //groups.google.com/forum/#!forum/racket-users/join https://groups.google.com/forum/#!forum/racket-users/join 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//groups.google.com/forum/#!forum/racket-users/join //docs.racket-lang.org/guide/other-editors.html https://docs.racket-lang.org/guide/other-editors.html 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//docs.racket-lang.org/guide/other-editors.html //github.com/racket/racket/wiki/IDE's-and-text-editors //github.com/racket/racket/wiki/IDE's-and-text-editors 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//github.com/racket/racket/wiki/IDE's-and-text-editors //www.racket-mode.com/ https://www.racket-mode.com/ 8c6bf239-dfc9-4aa8-b49e-96632d55f6c5->//www.racket-mode.com/ //github.com/racket/racket/wiki/IDE's-and-text-editors https://github.com/racket/racket/wiki/IDE's-and-text-editors