3 ms·
I haven't seen that yet. Could you give an example?
by eatonphil 4y ago
I haven't seen that yet. Could you give an example?
- frou_dh 4y agoIIRC in the following, the expected type of `x` in B stops being bool (but I no longer have a Zig env set up so I can't test it). # A if (x) { ... } else { ... } # B if (x) { ... } else |y| { ... }
- hansvm 4y agoThat looks right. If/else is overloaded as doing the normal thing with bools by default, and if you try to capture something exceptional with `else |y|` then the type of `x` is inferred to be something capable of such a capture -- optionals or error unions.
- frou_dh 4y agoIn a statically typed language, this specifically comes off to me as an artificial way to keep the total number of keywords down.