I was mostly refering to what the wait means in construct2.
It doesn't mean blocking a thread it means calling something later.
I agree with you though that C2 should be more programmer oriented in its design. Making things appear too easy for n00bs end up making things hard for more serious projects.
Like, I'd love to have more basic types than number and strings. Booleans and null would be nice. I mean... manipulable boolean, not like the "is Doomed" kind of condition but more like "Doomed == true" or better "Doomed == Function.Call("isAllowedToBeDoomed")"
But otherwise, that doesn't change the fact that wait being a thread blocking function or being a delayed callback mecanism is a matter of choice. And I'm not really sure if the "hack" you suggest is good or not.
What would happen if you call a wait in a multi nested loop? should we multiply by all the loop indices, or just the last one? and what if the user would want to do the former?...
In the end, since javascript is the language construct export to, I think the delayed callback mecanism makes more sense.
And documentation... yeah... documentation... (never really read it <_<)