Я ищу способ написать и поддерживать определенный алгоритм (субмодуль рендеринга графического кода моего кода, фактически) только один раз. Мне нужен алгоритм в С++, PHP и Javascript. Теоретически я мог бы написать его на С++ и обернуть его в расширение PHP; но это имеет много проблем и не решает Javascript-ссылку.
Я считаю, что я ищу инструмент, который преобразует язык (неважно, какой из них) в три (или два, если исходный язык является одним из трех) языков вывода я ' м. Я нашел MetaL (http://www.meta-language.net/), который, кажется, делает то, что я хочу, но также выгляжу мертвым (без обновлений с 2007 года) и нацелен только на один из трех необходимых мне языков. Он должен быть достаточно гибким и позволить мне обновлять результаты - например, я использую Cairo в моем представлении на С++ и PHP и HTML Canvas на стороне Javascript. Поэтому мне нужно настроить API для определенных эффектов.
В качестве альтернативы, я бы согласился на парсер PHP и lexer, которые предоставили бы мне AST с достаточной информацией для того, чтобы я мог писать генераторы для С++ и Javascript в качестве альтернативного бэкэнд.
Любые идеи? Спасибо.