Eric,Sorry but I can't see the value of having strict checking as an option. I think it would most likely lead to sloppy coding habits which would no doubt be more difficult to debug, especially if coming back to code that hasn't been worked on for some time.
As for the two variations, the idea of having empty fields separated by commas is good because it is immediately clear that there is an optional field. Simply leaving fields out gives no clue that there may in fact be optional fields. Who can remember such details about all the functions we will collect over time, whether our own or somebody else's? Certainly not me.
It's always interesting to compare the way various languages implement such things. In the case of Visual Basic many otherwise poor ideas actually work quite well because there are on screen hints and reminders as you type. Other languages with similar features don't work so well because you are constantly having to check the help files and/or manuals. Kixtart would of course fall into this later group. Needles to say, things get even worse when we are talking about user written commands and functions, which do not even appear in the manual.