P2P software wouldn't work too well without fiddling with the firewall anyway, is what I'm saying. I don't think circumstances would have changed much if we'd adopted IPv6 instead of NAT. P2P largely failed to take off outside of piracy circles because centralization is more reliable and efficient, that's all.
And yeah, I've dealt with segmented memory models, in C and ASM. I don't think the situation is very comparable at all, nor are segments as bad as people say, but that's neither here nor there. I mean, FFS, all modern systems use an MMU that remaps memory addresses between processes anyway.