Perl 6 will have a compromise solution to this. The calling style for a private method is very like, but not quite the same as, the calling style for a public method. All private attributes and method names will start with a distinguishing character, which at the moment I would guess is colon, though at one time it was exclamation mark.
Is this in addition to the submethods mentioned in Apocalypse 6, which seem to solve the same sort of issues?
The self documenting aspect is nice - one of the things I like about Ruby.
(I am so looking forward to A12 :-)