Saying that syntax-quotes are only intended inside macros is 1) not technically true, and 2) fostering a misunderstanding in how they work. While it is true that they are not normally used outside macros, I would rather say it that way instead of implying that they cannot.
Based on an example by Matt Huebert:
code>`[~@x]</code
is equivalent and compiles to
(vec (sequence (concat x)))
And an example by Nicola Mometto:
`[~@(when x whatever) 1 2 ]
is literally a shortrand for typing
(vec (concat (when x whatever) (list 1) (list 2)))
slack conversation
matt’s question followed by nicola’s explanation for full context
Saying that syntax-quotes are only intended inside macros is 1) not technically true, and 2) fostering a misunderstanding in how they work. While it is true that they are not normally used outside macros, I would rather say it that way instead of implying that they cannot.
Based on an example by Matt Huebert:
And an example by Nicola Mometto:
slack conversation
matt’s question followed by nicola’s explanation for full context