}
sum iota(1000).filter => num {
- [3, 5].any? => factor { num % factor == 0 }
+ [3, 5].any? => factor { num %% factor }
}
case AST_OP_LE: EMIT(BC_OP_LE); break;
case AST_OP_GE: EMIT(BC_OP_LT, BC_OP_NOT); break;
case AST_OP_INDEX: EMIT(BC_OP_INDEX); break;
+ case AST_OP_DIVBY: EMIT(BC_OP_MOD, BC_LD_IMM); EARG(0); EMIT(BC_OP_EQ); break;
default:
PANIC("unknown operation!\n");
}
if (ch == '=') {
new_token.type = T_PERCENTEQUALS;
NEXT;
+ } else if (ch == '%') {
+ new_token.type = T_DOUBLEPERCENT;
+ NEXT;
} else {
new_token.type = T_PERCENT;
}