Experiment is experimental.
Macros now take a second argument which is a single element list with the previous term.
In the old pre-1.0 days we allowed a list of all the previously enforested terms but this didn't behave well so I'm starting out with just a single term. We can argue our way into relaxing this restriction later.
Note that infix macros are contained within implicit delimiters so:
syntax m = (ctx, prev) => {
return prev;
}
1 + m
throws an error since prev
is the empty list.