История изменений
Исправление Deleted, (текущая версия) :
в стеке хранить структуру с двумя полями - на тип оператора и на массив аргументов (если твой ЯП гогно - С++ например и не содержит информации о типах то с каждым аргументом ее надо хранить вручную)
т.е. так
stack
{op: '*', args:[{type:NUM, val:1}, {type:VEC, val:[1,2,4]}}
{op: '+', args:[{type:VEC, val:[1,4]}, {type:VEC, val:[1,2,4]}}
хотя это уже не стек, в стеке просто структра - тип и значение и не парить моск
Исходная версия Deleted, :
в стеке хранить структуру с двумя полями - на тип оператора и на массив аргументов (если твой ЯП гогно - С++ например и не содержит информации о типах то с каждым аргументом ее надо хранить вручную)
т.е. так
stack
{op: '*', args:[{type:NUM, val:1}, {type:VEC, val:[1,2,4]}}
{op: '+', args:[{type:VEC, val:[1,4]}, {type:VEC, val:[1,2,4]}}