> As I mentioned before, I expect immutable pairs and strings to be particularly useful in multithreaded code, so that users do not have to bother copying them in order to be thread-safe.
That looks like a misconception to me.
For that, we don't need immutable pairs or immutable strings. We need
algorithms that don't mutate the data structures, like those in SRFI
146, which are build on top of ordinary pairs and vectors.
Most Lispers don't program in the large, so they don't have to deal with code written by someone else that may be of lesser quality. Passing around immutable data structures means that however buggy the other code may be, it can't corrupt your data. And that's just one consideration.
John Cowan
http://vrici.lojban.org/~cowan xxxxxx@ccil.org"Make a case, man; you're full of naked assertions, just like Nietzsche."
"Oh, i suffer from that, too. But you know, naked assertions or GTFO."
--heard on #scheme, sorta