At Thu, 24 May 2007 09:13:52 +0530, "Sridhar Ratna" wrote:
> On 5/24/07, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> >
> > At the language level, we are considering a few changes for version
> > 4.0. The most significant are:
> >
> > * Pairs will become immutable by default. This is the big change that
> > will break backward compatibility. We can provide a compatibility
> > `mzscheme' library, but we can't do that for all the libraries whose
> > public interface mentions lists.
>> Does this mean that standard procedures like `set-car!' and `set-cdr!'
> will be deprecated?
We'd still have mutable pairs, `set-car!', `set-cdr!', and a
`mutable-cons' procedure that is bound to `cons' in various
compatibility libraries.
But `cons' in the main language that we use would create immutable
pairs, and `set-car!' would fail when applied to an immutable pair.
Matthew