> But the biggest thing is probably that it made assemblers and compilers possible. Well, I'm not sure if that's strictly true. Maybe you could still have them without a shared memory architecture. But the shared memory architecture made them a whole lot easier.
I think the actual important part is being able to address and manipulate code like it's data somehow, rather than the specific architecture. Having two separate address spaces for code and data doesn't necessarily prevent that, though it's surely simpler with only one.