On Monday, 18 November 2013 at 21:09:26 UTC, Jacob Carlborg wrote:
On 2013-11-18 16:59, Dicebot wrote:
Anything that allows it routinely should be banned whenever
macros are
accepted or not. Modifying existing "normal" symbols = no way.
The whole point of macros is to modify symbols. Turning this:
auto p = Person.where(q => q.name == "John");
To an SQL query.
You don't need to modify actual input lambda for this to become
SQL query. I fully support macros as convenient way for AST
reflection and related code generation but not a single step
further. Changing semantics of existing valid piece of code is
never worth it.