MPS is thread safe, but doesn't do concurrent collection. Not really that different than most GC's besides the JVM's.
The restriction could be removed if either:
* the MPS could use a different set of protections to the mutator program
* the mutator program uses a software barrier
The first one is tricky, and the second one just hasn't come up in any implementation we've been asked to make yet. Given a VM, it could happen, and the MPS would be concurrent.So, I believe there's nothing fundamentally non-concurrent about the MPS design. It's kind of waiting to happen.
[I've put this in a comment in the code. Thanks for making me write it down :)]