home.social

#shunting_yard — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #shunting_yard, aggregated by home.social.

  1. Синтаксический анализатор на стеках и lambda-выражениях (Axolotl)

    Синтаксический анализатор на стеках и lambda-выражениях (Axolotl) В этой статье рассматривается практическая реализация синтаксического анализатора, основанного на стеке состояний и lambda-выражениях. Такой подход упрощает обработку синтаксиса, делая его гибким и легко масштабируемым. В статье описана архитектура анализатора, от лексического анализа до правил обработки состояний и обработки ошибок. Обсудим, как использовать состояния для синтаксического анализа ключевых конструкций и продемонстрируем простые, но эффективные методы для управления состояниями. Эта реализация — отличный выбор для быстрого прототипирования и собственных учебных языков.

    habr.com/ru/articles/856616/

    #Аксолотль #Axolotl #язык_программирования #анализатор #синтаксический_анализ #синтаксис #shunting_yard #стек #парсер #парсеркомбинаторы

  2. Синтаксический анализатор — модифицированный Shunting Yard

    Алгоритм синтаксического анализа кода на основе Shunting Yard — скажем "нет" рекурсии Преимущество модифицированного Shunting Yard над рекурсивным спуском заключается в его способности эффективно работать с более сложными синтаксическими конструкциями и грамматиками, которые не поддерживаются рекурсивным спуском. Благодаря использованию стеков для управления состояниями и операторами, алгоритм избегает проблем с глубокой рекурсией и может обрабатывать конструкции, требующие динамического изменения контекста. Это делает его более универсальным и производительным решением для построения абстрактного синтаксического дерева (AST) без ограничений на тип грамматик, характерных для рекурсивного спуска.

    habr.com/ru/articles/844252/

    #анализатор_кода #парсер #компилятор #интерпретатор #алгоритм #shunting_yard #дейкстра #ast #abstract_syntax_tree