Yeah, that's "lem" really. Though in that case it's Lisp all the way down apart from the native bits of the rendering layers.
IMHO there should ideally be a minimal shared transactional blackboard space that processes can coordinate in and then each buffer should be its own isolated process/thread -- like a chromium tab.