@Ocramius the real reason is that non-silent autoloaders (for instance the Doctrine one) are breaking class_exists by throwing an error when trying to autoload a non-existent class.

An autoloader should always be silent to preserve ``class_exists``, but unfortunately, some autoloaders (ZF1 and Doctrine for instance) made the opposite choice