Arithmetic evaluation: Difference between revisions
m
→{{header|Elena}}
Line 1,314:
=={{header|Elena}}==
ELENA 6.x :
<syntaxhighlight lang="elena">
import extensions;
import extensions'text;
class Token
Line 1,341 ⟶ 1,337:
Number = _value.toReal();
}
class Node
Line 1,355 ⟶ 1,349:
}
}
class SummaryNode : Node
Line 1,365 ⟶ 1,357:
Number = Left.Number + Right.Number;
}
class DifferenceNode : Node
Line 1,375 ⟶ 1,365:
Number = Left.Number - Right.Number;
}
class ProductNode : Node
Line 1,385 ⟶ 1,373:
Number = Left.Number * Right.Number;
}
class FractionNode : Node
Line 1,395 ⟶ 1,381:
Number = Left.Number / Right.Number;
}
class Expression
Line 1,420 ⟶ 1,404:
get Number() => Top;
}
singleton operatorState
Line 1,479 ⟶ 1,461:
}
}
class Scope
Line 1,584 ⟶ 1,564:
dispatch() => _state;
}
class Parser
Line 1,673 ⟶ 1,651:
catch(Exception e)
{
console.writeLine
};
|