Elixir language reference

I don’t think we agree. You say it looks like it is syntax. I say it is syntax. It’s a sequence of symbols that’s translated into an AST in a very unconventional way compared to the rest of the language (the same goes for maps, tuples, etc).

You’ve written this, which makes me think you think these cases are analogous. My position is that def and if look like syntax (they are turned into an AST node the way any function call is), while <<...>> is syntax (the parser does funny stuff with it to turn it into an AST node).

Or am I misunderstanding your position?

EDIT: The individual expressions separated by commas inside of a <<...>> are certainly not syntax (but they do look like it, enough to fool me before trying quote a binary quote do <<...>> end, like José showed above).