>>75
setuid to who? Certainly not root.
If you want to pass off as an expert, at least read up on what shared hosts actually do? I'll throw a bone: many hosts don't actually run PHP in-process for what is a server full of babby's first sites with no traffic. As far as CPU allotment goes from this setup, they just cut off and request the customer to upgrade on the few sites that actually get any traffic, as it is usually stated in their ToS.
You can configure PHP with very fine control over what functions are allowed, the maximum amount of time and memory, etc.
PHP is a thin wrapper over a bunch of cobbled together shit, it doesn't guarantee anything no matter what php.ini tells you. As far as I'm concerned the only real use of the time limit thing along with ignore_user_abort settings is to prevent the error log from filling the hard drive because of the combination of loops and PHP's shitty semantics that ends up creating unintended infinite loops.
usually don't care if your users' sites get hacked
Actually they do, depending on what they have for a setup, if it is an in-process setup compromised sites end up downloading payloads, which PHP happily obliges with its fopen wrappers, uses a vulnerability to hijack the server process and end up snickering at these silly time limits and memory limit stuff because now its just machine code with the web server's user id.
How are you going to do things like disable backticks (makes it too easy to spawn additional processes) without recompiling Perl
How is Cuddersoft Hosting solutions going to compete with 5$ hosts that provide CGI in their plan? As an example I just googled "hostgator perl" and theres a page on how to set it up on their shared plan. There's nothing here.
The same issue applies to all the other general-purpose scripting languages that got used for generating web pages.
Are you lumping Lua and Lisp's parseability with Perl as a reason to choose PHP?
Some C and C++ compilers do TCO as well.
That's nice, but how does that change anything? Writing C code that can only run because of the TCO in some random compiler would be sort of foolish. Whereas writing the same style in other languages where the language specification requires it basically makes the code properly conformant to the standard, runtime-wise.
But if you ask me, needing an optimisation for it to be possible to do anything useful with the language at all is a big FAIL.
How is it a fail that a language expresses a philosophy, actually follows it, and actually succeeds in its objective? You seem fixated on the word "optimization" and using it as a connotation, it is sometimes also called Tail Call Elimination, if that's more your fancy. This is very much like arguing that C is a big fail because it derives utility out of evaluation short circuiting on its boolean operators.