←back to thread

460 points pieterr | 4 comments | | HN request time: 0.824s | source
Show context
neilv ◴[] No.42158506[source]
The article has a broken link for the free copy:

https://mitp-content-server.mit.edu/books/content/sectbyfn/b...

https://web.mit.edu/6.001/6.037/sicp.pdf

I hadn't seen a blessed PDF version until today. Circa 2001, only the HTML version was freely available, and someone converted it to TeXinfo: https://www.neilvandyke.org/sicp-texi/

If anyone wants to work through SICP today, you can run the code in MIT Scheme, or in DrRacket: https://www.neilvandyke.org/racket/sicp/

replies(5): >>42158584 #>>42158769 #>>42158866 #>>42158920 #>>42161636 #
1. kkylin ◴[] No.42158920[source]
For anyone wishing to try: the maintainers of MIT Scheme no longer provide a .dmg but you can download and build the x86_64 version of MIT Scheme. The current release (v12.1) works on a Mac running Sequoia with Intel CPU or on Apple silicon via Rosetta. But the native code compiler (not necessary for SICP AFAIK) is a little broken. (Anecdotally it worked on macOS prior to Monterey, so maybe an Apple-supplied dependency changed. Haven't tracked down the issue.)

All of that is to say: if you do not need MIT Scheme and don't want to fuss with compiling it, then Racket might be a better way to go.

replies(2): >>42160685 #>>42165319 #
2. xdavidliu ◴[] No.42160685[source]
most package managers have it, including apt and brew, so most of the time no need to build your own
replies(1): >>42161618 #
3. kkylin ◴[] No.42161618[source]
Good point! though my comment about the native code compiler being broken still applies to the brew-installed version
4. aag ◴[] No.42165319[source]
There isn't an active maintainer any more, I'm afraid. And Apple placed restrictions on modifying memory that contains instructions that prevented techniques the compiler relies upon for fast allocation of closures. There are ideas for workarounds, but they would require a lot of work.

I'm a huge fan of MIT Scheme, and have used it since 1984, but I would recommend using another implementation these days, especially on Mac.

See Scheme.org.