Hi! > A JIT or AOT machine code generator IMHO will never have a decent use of > system resources without some sort of strong/strict typed rules, > somebody explain if thats not the case.
Yes, that's not the case, at least nobody ever showed that to be the case. In general, as JS example (among many others) shows, it is completely possible to have JIT without strict typing. In particular, coercive typing provides as much information as strict typing about variable type after passing the function boundary - the only difference is what happens _at_ the boundary and how the engine behaves when the types do not match, but I do not see where big performance difference would come from - the only possibility for different behavior would be if your app requires constant type juggling (checks are needed in strict mode anyway, since variables are not typed) - but in this case in strict mode you'd have to do manual type conversions, which aren't in any way faster than engine type conversions. So the case for JIT being somehow better with strict typing so far remains a myth without any substantiation. > while on strict mode the generated code could be: > > int calc(int val1, int val2) { > return val1 + val2; > } No, it can't be (at least it can't be the _entire_ code of this function), since the user still can pass non-int into this function - nothing introducing strict typing in functions, as it is proposed now, prevents it. What strict typing does is to ensure the error in this case, but to generate the error you still need the checks! BTW, your weak mode code is wrong too - there's no need to generate Variants if you typed the variables as int. You know once coercion is done they are ints. At least in the model that was now proposed. > If my example is right it means strict would be better to achieve good Unfortunately, your example is not right. > to another level of integration with PHP and performance. IMHO is harder > and more resource hungry to implement a JIT/AOT using weak mode. With Please provide a substantiation for this opinion. So far what was provided was not correct. > Thats all that comes to mind now, and while many people doesn't care for > performance, IMHO a programming language mainly targeted for the web > should have some caring on this department. Please do not strawman. A lot of people here care about performance, and you have not yet made case that strict typing has any benefit on performance, so implying that opponents of strict typing somehow don't care about performance while you champion it does not match the real situation. -- Stas Malyshev smalys...@gmail.com -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php