4 ms·
I like Zigs justification for not having general purpose operator overloading (no hidden function calls and loops) But I wish they added: 1. Ability to declar
by audunw 3y ago
I like Zigs justification for not having general purpose operator overloading (no hidden function calls and loops)
But I wish they added:
1. Ability to declare completely pure functions that have no loops except those which can be evaluated at compile time. Something with similar constraints as eBPF in other words. These could be useful in many contexts.
2. Ability to explicitly import overloaded operators, that can only be implemented using these pure guaranteed-to-finish-in-a-fixed-number-of-cycles functions.
Then you'd get operator overloading that can be used to implement any kind of mathematical function, but not all kinds of crazy DSL-like stuff which is outside the scope of Zig (I have nothing against that, I've done crazy stuff in Ruby myself, but it's not suitable for Zig)