tmptrash / irma

Digital organisms ecology system experiment
MIT License
15 stars 5 forks source link

Optimize numeric operators #63

Closed tmptrash closed 5 years ago

tmptrash commented 5 years ago

Сейчас все операторы, которые работают с числами проверяют их на Infinity. Эту проверку можно делать более рационально. Вместо кода:

    case CODE_CMD_OFFS + 6:  // add
        ++line;
        ax += bx;
        if (!fin(ax)) {ax = MAX}
        continue;

можно сделать:

    case CODE_CMD_OFFS + 6:  // add
        ++line;
        if ((ax += bx) === Infinity) {ax = MAX}
        continue;