To be clear: The top code is what I just had to write. Dot syntax has some ambiguity with command and variable names. I think leaving commands (and functions?) as a reference for CALL is the easiest to figure out at compile time.