Shunting-Yard VS Парсер рекурсивного спуска

Я создаю расширенный математический синтаксический анализатор и хотел бы узнать разницу между Shunting-Yard и другими доступными алгоритмами синтаксического анализатора, такими как "Descent Parser", зная, что я предпочитаю хранить формулу в нотации RPN.

Заранее спасибо,

1 ответ

У меня никогда не было особого применения алгоритма "шунтирующего двора", потому что он, кажется, сосредоточен только на выражениях инфикса. Разбор рекурсивного спуска легко делает выражения и большую часть того, что вы хотите делать с более сложными парсерами. Будучи более общим, я нахожу это более полезным, и мне не нужно помнить две техники.

Смотрите мой SO-ответ о том, как создавать парсеры рекурсивного спуска здесь: есть ли альтернатива flex/bison, которую можно использовать в 8-битных встроенных системах?

Другие вопросы по тегам