Я собираюсь начать разработку подкомпонента приложения для оценки математических функций с операндами объектов C ++. Доступ к нему будет осуществляться через пользовательский интерфейс для обеспечения перетаскивания, обратной связи соответствующих типов с последующей кнопкой выполнения.
Я весьма заинтересован в использовании flex и bison для этого, рассматривая разбор уравнений и тому подобное, как здесь, так и дальше. В чем я не уверен, так это в том, подходит ли flex / bison, когда вы пытаетесь анализировать пользовательские типы C ++? Очевидно, что обычный синтаксический анализ выполняется с текстом, и это довольно далеко от того, чего так хотелось, чтобы тоже посмотреть, что думают люди, и посмотреть, пытаюсь ли я поставить квадратный колышек в круглое отверстие.
Что ты думаешь?
Редактировать
В ссылках, предоставленных людьми ниже, есть несколько очень хороших источников информации. Тот, который выглядит многообещающим, но еще не упомянут, Boost.Spirit. Я просматривал примеры ранее сегодня, и есть некоторые информативные примеры на основе калькулятора в каталоге boost / libs / spirit / examples, если вы скачали boost и проявите интерес. Их домашняя страница здесь .