First, I couldn't remember how to test if a command-line argument to a macro call was present or not. So I had code like:
Let>Default={"This is the default value"}
If>{%commandarg% ""}
Let>commandarg={%Default%}
EndIf>
[I did it this way so the 'default value' is right at the top, instead of hidden amist the code].
Anyhow, I realize [having reread the docs] that that isn't the right test [since apparently a vbl that isn't defined doesn't return "nothing" but rather just returns its own name. So I think I need that to actually be:
If>{%commandarg% = "%commandarg%"}
but I can't get that far: I get a *syntax*error* on that line, and I can't figure out why -- what's wrong with the syntax there??? [and could someone remind me of the 'right' way to test for missing macro args..

On another front, I see in all the examples that there are multiple {}s around logical expressions. Why? For example, I see things like:
If>{{%a% = 4} AND {%b%=7}}
why the extra {}s? wouldn't just
If>{%a% = 4 AND %b%=7}
be sufficient?
Thanks!