| ▲ | kjgkjhfkjf 3 hours ago | |||||||
The article is a bit dense, but what it's announcing is effectively golang's `defer` (with extra braces) or a limited form of C++'s RAII (with much less boilerplate). Both RAII and `defer` have proven to be highly useful in real-world code. This seems like a good addition to the C language that I hope makes it into the standard. | ||||||||
| ▲ | Zambyte 3 hours ago | parent | next [-] | |||||||
Probably closer to defer in Zig than in Go, I would imagine. Defer in Go executes when the function deferred within returns; defer in Zig executes when the scope deferred within exits. | ||||||||
| ||||||||
| ▲ | L-4 an hour ago | parent | prev [-] | |||||||
Both defer and RAII have proven to be useful, but RAII has also proven to be quite harmful in cases, in the limit introducing a lot of hidden control flow. I think that defer is actually limited in ways that are good - I don't see it introducing surprising control flow in the same way. | ||||||||