On Sat, Oct 22, 2011 at 4:10 PM, Shriram Krishnamurthi <s...@cs.brown.edu> wrote: > I'm missing why there are impersonators and chaperones for various > datatypes but not for lists. There's surely a good reason why, but I > am having trouble reconstructing what it might be. Anyone?
First, chaperones aren't necessary for lists, because copying a list preserves all the behavior that chaperones support (state sharing and equal?). Second, it would be difficult to add chaperones for lists, because lists are used extensively in the runtime with the assumption that simple accesses to the relevant C structure elements work on anything that is `pair?'. There are some things that would make list chaperones nice to have, such as lazily-checked contracts, and so therefore if the burden of changing the runtime becomes less in the future, they may happen. -- sam th sa...@ccs.neu.edu _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users