requireのパス問題

require_once(__FILE__) . 'lib/App/Frontend/Customer/Login.php';

汚い。こんな汚いのは他の言語には現在出てくることはないが、PHPの
プロダクトはこれがデフォ。

クラス名の問題

パスから一意の文字列を生成するしかないしお約束がフレームワークの実装に
よって違う。どちらも他の言語には見られない。

グローバルスコープ

スコープ内でも関数名はグローバルスコープ。つまりスコープが偽物。
しかもこれを抑制する方法が全くない。

はい、具体的な反論どうぞ。「こう工夫すれば大丈夫」じゃなくてな。

Perlのクラスは工夫だらけだが、Perl4の実装が良かったので前方互換としては
まあマシ。PHP5はPHP4がゴミなのに前方互換を持たせた結果今だにゴミ

Perlを例に出したのは途中で仕様がガラッと変わった言語ってあまりないからだ。