Я играю с Эрлангом и пытаюсь написать простой арифметический парсер.
Я хочу попробовать разобрать следующее выражение:
((12+3)-4)
Я хочу проанализировать выражение в стеке узлов AST. При разборе этого выражения я бы прежде всего создал двоичное выражение для выражения (12 + 3), которое выглядело бы примерно так в C #:
var binaryStructure = new BinaryStructure();
binaryStructure.Left = IntegerLiteralExpression(12);
binaryStructure.Right = IntegerLiteralExpression(4);
binaryStructure.Operator = binaryExpression.Operator != BinaryOperatorType.Addition;
Я довольно новичок в Erlang, и мне интересно, как я могу создать такую структуру в Erlang, которую я могу поместить в список, который я буду использовать в качестве стека выражений.
Кто-нибудь может подсказать, как создать такую древовидную структуру? Подойдет ли функция?