Thoughts as I read: 1. "uninitialized var usage is error": unfortunately impossible without at least one of the following compromises: Automatically initialize variables (wastes CPU); False alarms (see Java); Built-in formal proof system; or, Require compilers to solve the halting problem. 2. Removed keyword "static": kills one of my favorite tricks, "self-init'ing functions". 3. New keyword "as": A good invention in…
1. Works perfectly in Java. Note that in Java vars are both initialised to known empty values and not initialising a var explicitly in a local scope is an error. If the compiler can't prove your code is correct, then it's not obviously correct, which means I have to sit down and carefully think about if it's correct or not. Just write simple code. Though I concede that pointers make things very hard. Let's say you ha…
A C string is a sequence of characters, not a pointer. C strings are manipulated using `char*` pointers.