Quick Add is a kind of mid-point between Natural Language Processing (NLP) and a programming language. Perhaps for performance reasons, the gCal text entry interface is not as flexible as a typical NLP interface. It's much less capable of parsing and "understanding" a phrase than a human reader.
On the other hand, it's more accepting than a compiler or interpreter. It will ignore things it doesn't "understand" and make some inferences. The inferencing is often incorrect, so I haven't used Quick Add very much.
If you know what Quick Add expects, however, you can dramatically improve its interpretations. The key pattern is (sorry, you have to memorize this pattern -- it's in english alpha sort order until "Where"):
What(title)-When-Who(invitee list)-WhereWhat and When are required ...
In other words (the real strings don't have the  brackets), something like (bold is required):
- What: This can be any text; the event title is created from this.
- When: This can be nearly any date and/or time expression. Using “at” and/or “on” can help the recognition.
- Who: This should begin with “with” followed by a list of email addresses; these are added to the guest list.
- Where: This can be any text following “at” or “in.”
[Meet Emily] on [7/12/2008] with [email@example.com, firstname.lastname@example.org] at [Minneapolis metrodome].The logic for recurring events extends the "when clause":
When creating recurring events, the time expression has three parts: the start, the repetition, and the end.So:
[Meet Emily] on [7/12/2008 every month for five months] with [email@example.com, firstname.lastname@example.org] at [Minneapolis metrodome]I think you can see why this interface is nowhere near "natural", but with practice it looks powerful and it's likely to improve.
Call it pseudo-natural.