I don’t want to repeat, so you first read
then you will see the whole secret of macro is just manipulate data structures that later expanded to AST. Combine
| name | meaning |
|---|---|
| elaborate | source code (no intrinsic semantics) → language (with semantics) |
| compile | language (with semantics) → language (with semantics) |