What's the point of having a stack-based scripting language, if only a few standard forms are allowed? What is the purpose of a stackmachine if only some standard script forms are allowed? And why are some scripts allowed and perfectly fine in mined blocks but rejected by clients if found in transactions; what's the point of that? The more I read about script the less it makes sense.
OK, the original concept of scripts was not perfect. But with p2sh (BIP-16) any script can be realized