PHP: a fractal of bad design
PHP’s parser refers to e.g.::internally asT_PAAMAYIM_NEKUDOTAYIM, and the<<operator asT_SL. I say “internally”, but as above, this is what’s shown to the programmer when::or<<appears in the wrong place.
The epitome of “this thing sucks” article. Analysis of EVERYTHING that's wrong with PHP down to a tiny detail.
When anybody will start complaining to me about some technology, I will refer him to this article.