Я хочу разрешить математические переменные в моем приложении, управляемом парсером Lemon. Например, если пользователь вводит x ^ 2 + y, я хочу иметь возможность оценить это для 100 000 различных пар значений x и y, надеюсь, без повторного анализа каждый раз. Единственный способ, который я могу придумать, - это заставить синтаксический анализатор генерировать дерево объектов, которое затем оценивает выражение при получении ввода. Есть ли способ лучше/проще/быстрее?
Производительность может быть проблемой здесь. Но я также забочусь о простоте кодирования и сопровождения кода.