[plt-scheme] can't run SICP "generic operations" code in PLT Scheme 4.1

From: Robby Findler (robby at cs.uchicago.edu)
Date: Wed Oct 15 08:32:17 EDT 2008

On Wed, Oct 15, 2008 at 7:23 AM, Matt Jadud <jadudm at gmail.com> wrote:
> For Fred (and others coming to the PLT 4.x game late), the things that
> took me by surprise yesterday:
> 1. Hash table operations have all had name changes.
> A. Mutators are gone from structures. (define-struct foo (a b)) no
> longer yields "set-foo-a!". Yes, they can be introduced at
> definition-time, but not if they're being provided by a library.
> "struct-copy", I think, was the functional way to update a structure.
> (Apologies if I just got that wrong.)

Yes, struct-copy (note that copy-struct is the old one).

> 2. 'require' and 'provide' specifications have changed.

Just in case you didn't find it yet, more along the lines of the above
can be found in the plt distribution:


The latest version of that file is here:



Posted on the users mailing list.