On 18/03/12 20:37, Christian Aistleitner wrote:
Dear all,
should we allow using PHP's assert [1] in MediaWiki code?
It would allow us to formulate and automatically verify conditions about code, while at the same time providing readable documentation of code for free.
Possible, exemplary use cases would be:
- automatically verifyable documentation of code's intent
- guarding against logic pitfalls like forgetting to set a variable in all branches of switches, if/else cascades
- guarding against using uninitialized variables
What do you think?
We use exceptions for that.
P.S.: For typical MediaWiki use cases, PHP's assert is even faster than throwing exceptions behind 'if'-guards.
That's funny, for me "if" is about 10 times faster than assert() in the non-throwing case. Micro-optimisation in PHP usually revolves around minimising the number of function calls, since a function call is relatively complex and expensive compared to other opcodes.
-- Tim Starling