I just committed 0.0.4 update to the Cola compiler.

Besides minor code cleanups, new features are:

Bitwise operators <<, >>, |, &, ~, ^
Logical operators &&, ||

Complex conditionals:

Logical expressions do lazy left right evaluation in the
standard C style.

if(i == 0 || j == 0 || k == 0) {
        puts("one of them == 0\n");
}

The generated code should be mostly efficient except for a few
weird cases, but the optimizer will clean those up eventually.

Still todo are: ternary conditionals, assignments inside conditionals,
assignment operators like +=, -=, etc. and a few minor other issues
like constant folding.

Next stop: switch() statement.

-Melvin

Reply via email to