Re: Long-Term Planning for PHP 9.0 Error Promotion
| From: | Christian Schneider | Date: | Sat, 29 Jan 2022 19:58:40 +0000 |
| Subject: | Re: Long-Term Planning for PHP 9.0 Error Promotion | ||
| References: | 1 2 3 4 5 6 7 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-116950@lists.php.net to get a copy of this message | ||
Am 29.01.2022 um 20:03 schrieb Mark Randall <marandall@php.net>:
> On 29/01/2022 16:33, Christian Schneider wrote:
>> If a static analyzer manages to catch it at development time then that is a lot better.
>
> Of course it's better, but you wouldn't argue that a car doesn't need airbags
> because you've tested that the breaks work.
To stay with your car analogy: A driving assistant system (especially when wrongly interpreted as
auto-pilot) can lead drivers to not paying attention to the road any more. Which means even systems
designed to help can have negative effects.
> With runtime checking, the engine should always try to protect against the unexpected,
> irrespective of if other checking has already been performed by outside sources.
I think we've been over this: I don't think the engine should force me to write too much
unnecessary stuff just because I have to tell it I am sure I mean what I wrote. There is a balance
between explicit declarations and conciseness, we just disagree where the sweet spot is.
I do for example admire the power of Haskell's type system but I would never want PHP to try to
implement it.
Regards,
- Chris