Super Volatile

Krzysztof Szafranek's link blog

Hi, I'm Krzysztof and I make websites.
When I'm not making websites, I read these.
Apr 15, 2012 / 12:46am

PHP: a fractal of bad design

PHP’s parser refers to e.g. :: internally as T_PAAMAYIM_NEKUDOTAYIM, and the << operator as T_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.

Filed under: php   programming  
Nov 23, 2010 / 10:36pm

Reply to "Scala is Easier than PHP"

I was at the IPC Spring Edition conference in Berlin presenting my talk “Integrating Erlang with PHP”. I started by talking about all the wonders that Erlang promises such as:

  • Code reload without stoping the server.
  • Being ready for multicore programming.
  • No shared state.

When the audience looked at me like: “hey PHP already does that”, I realized how much Kool Aid I had drunk.

While the article is not really defending PHP, it gives some perspective on recent hype about functional languages.

Filed under: php   programming   scala  
Mar 30, 2010 / 11:17pm

Resetting PHP 6 [LWN.net]

The end result of all this is that PHP 6 development eventually stalled. The Unicode problems made a release impossible while blocking other features from showing up in any PHP release at all. Eventually some work was backported to 5.3, but that is always a problematic solution; it brings back memories of the 2.5 kernel development series.
more on lwn.net

Amusing story of how PHP 6 development effort failed when confronted with Unicode.

Filed under: php   unicode  
Feb 3, 2010 / 2:25am

Facebook Developers | HipHop for PHP: Move Fast

HipHop for PHP isn't technically a compiler itself. Rather it is a source code transformer. HipHop programmatically transforms your PHP source code into highly optimized C++ and then uses g++ to compile it. HipHop executes the source code in a semantically equivalent manner and sacrifices some rarely used features — such as eval() — in exchange for improved performance. HipHop includes a code transformer, a reimplementation of PHP's runtime system, and a rewrite of many common PHP Extensions to take advantage of these performance optimizations.

Pragmatic approach: instead of complaining how wrong PHP is (and it is :) ), Facebook accepted the fact it's also easy and popular, and made it fast.

Filed under: facebook   open source   php