# Reading Club: Continuing Declarative (macro_rules!) macro improvements
- April 15 2025
- Participant: Vincent (@vincenzopalazzo), Josh (@joshtriplett)
## Topic
Reading club about the rust project goal 2025
- Project Goals: https://rust-lang.github.io/rust-project-goals/2025h1/macro-improvements.html
- Project Goal: https://github.com/rust-lang/rust-project-goals/issues/252
Reading the RFC https://github.com/joshtriplett/rfcs/blob/declarative-attribute-macros.md/text/3697-declarative-attribute-macros.md
## Minutes
Discussion about priorities for prototyping order:
- Attribute macros
- Derive macros
- Initial macro fragment fields
- Further
# Questions
Vincent: Wondering if writing the attr macro in the following way is more intuitive for the user & make the code to implement from the compiler side easy and reusable
```rust=
macro_rules! main {
attr {
($func:item) => { make_async_main!($func) };
(threads = $threads:literal) ($func:item) => { make_async_main!($threads, $func) };
}
}
```