Mondrian Memory Protection
Dynamic languages would often benefit from fine-grained memory protection, especially when it comes to parallelism. Since fast implementations use pointers as references (they just don't allow pointer arithmetic), this means that you want to run parallel components in the same process to be able to pass references between them. This looks like threading, but the message-passing nature of these languages gives you a bit better control over flow between threads. Ideally, you would be able to access objects from other threads only if they've been explicitly marked as visible.
A few years ago, some guys at MIT came up with a way of implementing this kind of granularity by separating the translation and protection mechanisms of virtual memory. They named this after the artist Piet Mondrian, because the memory layouts it made possible look quite similar to some of his paintings. Mondrian, by the way, was an interesting individual. He hated distractions in his workplace, and worked in a white studio. The story is told that one day, a female relative decided the place needed brightening up a bit, and left a rose on his table. She came back a few days later to discover that Mondrian had painted all of the petals white. I suspect a lot of programmers can see a little bit of themselves in him.
As well as allowing fine-grained memory protection between threads, Mondrian protection allows a form of call gate in which each call sets new permission tables and each return restores the old one. This feature allows you to enforce private access to an object's data in the CPU by having a gate for each object. When you invoke a method, you gain access to the object's internal structure, and when you exit this method (either via a return or a call somewhere else) you lose it. Code in other components can't touch it.
So far, Mondrian memory protection hasn't been incorporated into any commercial CPUs—it was only implemented in a simulated MIPS design at MIT.