[racket] list of Racket <-> Scheme R5RS differences?

From: Dan Grossman (djg at cs.washington.edu)
Date: Tue Oct 25 14:52:40 EDT 2011

Hi all,

I'm wondering if there's a concise, informal, mostly complete list of
R5RSisms that won't work in Racket (#lang racket).  As I'm porting
some old teaching materials to Racket, I've come across:

* Cannot write (if e1 e2); replace with (when e1 e2) or (and e1 e2)
* Cannot write (); replace with null or '()
* Cannot write set-car! or set-cdr!

To be clear, I like all these changes, it would just be great to have
a check-list of things to look for.

Honestly, what would most help /me/ personally would be a list
comparing to "Pretty Big" from May 2008, but since that would
presumably help fewer people, R5RS seems like a better starting point.
 I can probably figure out other non-R5RS changes relevant to me, such
as struct being preferred to define-struct and significant changes to
the module system.

And notice I'm not asking for things Racket has /added/ -- that list
would be long and is well covered by reading the documentation.



Posted on the users mailing list.