I actually did most of the work for this update last weekend, and I intended to make an update midway through the week once I finished one final thing (++ and -- operators, which still aren't done; more discussion on that some other post probably). Anyway, whatever... here's what I did get done.
While loops generate: We've got the most basic sort of loop, the while loop in place now.
Logical operators: You can now use !x, x && y, and x || y in your expressions. Handy!
Comparison translatons: Right after my last post, Overkill kindly pointed out that I was doing a direct translation for comparisions, which would not necessarily work. This is because of one fantastic gotcha in Lua: unlike most languages (which inherited the idea from C), 0 is not equal to False. In Lua, the only values that equate to False are false or nil. Contrast this to VergeC (and other C-likes), where you can expect things like 0, nil, empty strings, etc. etc to all be equal to false! So, internally we now have a table called VergeC.runtime, which contains lots of functions to do conversions for us. I'll also be sticking Verge library functions in there.
Miscellaneous: Updated what identifiers look like (previously it was just "any string of word characters", now it allows numbers and underscores and whatnot in the ways that you would expect a C-like language to). Changed the way it deals with scoping, and does actual checks on whether a referenced variable exists or not, and inspects where in the scope it is. Moved global variables into VergeC.bin along with all of the functions so we don't have to worry about trampling normal global scope (this was helped a lot by the new scoping stuff I built, since now globals and locals have to be referenced differently).
You can check out my current work-in-progress at https://github.com/speveril/VCLua.
Oh, and one more somewhat administrative type thing: I've re-enabled commenting. I've slipped a slightly stronger captcha type thing in there to try and prevent bot posting. If I start having problems with spam again then I'm going to go ahead and start using recaptcha or akismet or something.