はじめまして、かな。
興味深い内容なので、思わず出てきました。

実質的に private が存在しないということだと、
言語としてカプセル化が保証できない、という事になるかと
思うのですが、それは美しくないのではありませんか?

まあ、java じゃないんだから、と言ってしまえばそれまででしょうが。

pythonを以前いじったことがありますが、
なかなかスマートなやり方をしていたと思いました。

private を指定すると、

property名の後ろにこっそり アンダースコア2つだかなにかが付け加えられ、
外部からアクセスできなくなるというやり方だったかと思います。

このやり方だと、いざという時に緊急避難的にアクセスすることも出きるし、
普通にはjava のprivate と同じ扱いでもあります。

そんな感じだと分かりやすいのではないでしょうか?

yt