Very cool.  As a Rust newbie I&#x27;d like to understand what&#x27;s going on here.  Is this a &quot;procedural&quot; macro?  Does Rust specifically target writing DSLs using its macro system?  Can we expect macros like this to continue working for a long time?  There&#x27;s a blog post that suggests possible changes: <a href="https:&#x2F;&#x2F;internals.rust-lang.org&#x2F;t&#x2F;the-future-of-syntax-extensions-and-macros&#x2F;2889" rel="nofollow">https:&#x2F;&#x2F;internals.rust-lang.org&#x2F;t&#x2F;the-future-of-syntax-exten...</a>