String of some math operators to result with javascript.
Learning about compiler with Javascript. This is only for exercise.
Only this four lines of text can be compile.
- sum {number} and {number}
- sub {number} from {number}
- mul {number} with {number}
- div {number} by {number}
string to token
var str = "sum 5 and 4";
var token = transpileString(str).token;
Token
[
{
"type": "Operator",
"value": "sum"
},
{
"type": "Number",
"value": "5"
},
{
"type": "Expression",
"value": "and"
},
{
"type": "Number",
"value": "4"
}
]
token to ast
var str = "sum 5 and 4";
var ast = transpileString(str).ast;
AST
{
"type": "Program",
"body": [
{
"type": "Operator",
"value": "sum"
},
{
"type": "Number",
"value": "5"
},
{
"type": "Expression",
"value": "and"
},
{
"type": "Number",
"value": "4"
}
],
"sourceType": "text"
}
result
var str = "sum 5 and 4";
var result = transpileString(str).result;
// 9