Remon is a responsible library developer. She cares about stability, flexibility and correctness, using whichever tools are presently accessible to achieve those goals. Her authored libraries feature automated testing and extensive documentation; she allots design decisions rationale; she knows her ...
A short post on how variable names can leak out of macros if there is a name collision with a constant. I thought this was a delightful read!
This was a great post, but is the last state of the macro actually bad for performance in any way? I get that it's ugly (and we should only choose to make code less readable like this when there's actually an issue) but is it worse for runtime performance?
I understand that the macro only affects compile time but I'm talking about the extra function that's included in the resulting source code when the macro is expanded during compile. Based on other feedback, it looks like the unused function is optimized away.
Maybe a good idea for a post. But the amount of reaches required makes this icky.
Pretending people write:
let Ok(x) = read_input() else { return Err(Error) };
instead of
let x = read_input().map_err(|_| ...)?;
Pretending people write:
const x: &str = "...";
instead of
const X: &str = "...";
Pretending there exist people who have such knowledge of rust macros hygiene, ident namespaces, etc, but somehow don't know about how macro code expands (the "shock" about the compile error).
Maybe there is a reason after all why almost no one (maybe no one, period) was ever in that situation.