Re:Why does the C preprocessor interpret the word “linux” as...
by andrewflnr on Wednesday October 09, 2013 @09:16PM
(#6525111)
As I understand it, it is one of Rust's goals to be predictable in the code it runs/emits. This is fitting in a language designed for performance-critical systems. I see what you mean about the point of macros being that they can transparently add compile-time behavior. That's just a different, inconsistent philosophy from that of Rust.
[ Parent
| on HN ]
Re:Why does the C preprocessor interpret the word “linux” as...
by ajross on Wednesday October 09, 2013 @10:48PM
(#6525387)
Sure. Lots of successful languages exist without macro facilities. Lots exist with it. Frankly I don't see much correlation with "performance-critical systems" given that the overwhelmingly dominant languages in that field both have metaprogramming facilities (C++ has two!).
I was just quibbling with the idea that putting a magic "!" on a macro somehow makes it a better design choice. I don't think it does, either as a macro or as a safety mechanism.