While encapsulation is not unique to OO, it is a trait of OO.
I am not sure that this is an inherent trait for OO. For example to me the core of OO is about objects and messages.
The encapsulation is something I see as "artifical", like the discussion of multiple inheritance vs "mix in behaviour" in Ruby.
Personally I'd love to see a pure prototype language like Io, but with a nicer syntax (more similar to ruby and python)
I think C and C++ are rather complicated compared to either ruby or python. C is still on my todolist but pointers
and memory handling confuses and bores me
I spent 5 years with ruby so far and do not regret it, except that
there really is so much in C and C++ in the Linux world... hardly a way around it. Game engines include that I guess
(Ogre3D is in C++ and crystalspace too afaik)