▲ | munificent 2 days ago | |||||||
> I'm not sure of the value of seeing all of the variables used listed in one place It means the compiler knows how much memory the function's activation frame will take and the offset into that for every variable before it encounters any code in the function. Basically, it makes it easier to write a single-pass compiler. That was important in the 70s but is less important these days. | ||||||||
▲ | cb321 12 hours ago | parent [-] | |||||||
A lot of people in this subthread are echoing this, but it's at most maybe very slightly easier. For example, TinyCC is a one-pass C compiler and yet C has sub-scopes int foo() { /.../ { int x; /.../ } }. The same could be said of Ken Thompson's C compiler which I believe was also one-pass. Does Titania not have/intend to have lexically local subscopes? That would seem very un-Wirthian to me. | ||||||||
|