Re: [RFC] Exceptions in the engine
| From: | Nikita Nefedov | Date: | Fri, 20 Feb 2015 10:09:20 +0000 |
| Subject: | Re: [RFC] Exceptions in the engine | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-83284@lists.php.net to get a copy of this message | ||
On Fri, 20 Feb 2015 12:39:33 +0300, Tony Marston <TonyMarston@hotmail.com> wrote:
I disagree. Exceptions were originally invented to solve the semipredicate problem which only exists with procedural functions, not object methods. Many OO purists would like exceptions to be thrown everywhere, but this would present a huge BC break. If it were possible get these functions to throw an exception ONLY when they are included in a try ... catch block then this would not break BC at all.Tony, first of all - this still breaks BC, because exception is being thrown in a place where it used not to be... When some function's result heavily depends on the context it makes said function much harder to reason about. And creates mental overhead for those who'll have to read the code with this function. And again, if you need exceptions for fopen please consider using SplFileObject.