Re:Why Zig when there is already C++, D, and Rust?
by zabzonk on Friday January 15, 2021 @06:35PM
(#25798112)
But what are the types of those fields it is "adding"? What are the semantics of "adding" for those types? These things are not obvious from reading that statement.
[ Parent
| on HN ]
Re:Why Zig when there is already C++, D, and Rust?
by qayxc on Friday January 15, 2021 @07:08PM
(#25798394)
They are obvious to the programmer who knows the types of b and d and thus the semantics of adding them.
The operation itself implies that both b and c.d must be primitive types and so the semantics of the operation are defined by Zig's language rules.
edit: To clarify - this in contrast to, say C++, where nothing can be inferred about the types of the variables involved and the semantics of the operation, since '+' can be overloaded.