Написание инструмента форматирования кода для языка программирования

Я изучаю возможность написания инструмента форматирования кода для языка Apex, варианта Salesforce.com на Java, и perhams VisualForce, языка разметки на основе тегов.

Я понятия не имею, с чего начать, кроме ощущения / знания того, что написание синтаксического анализатора языка с нуля, вероятно, не лучший подход.

У меня довольно тонкое представление о том, что такое Antlr и что он делает, но концептуально, Я предполагаю, что можно «обучить» antlr понимать синтаксис Apex. Затем я мог бы получить структурированную версию кода в структуре данных (AST?), Которую я мог бы затем пройти для создания правильно отформатированного кода.

Это правильная концепция? Antlr - это инструмент для этого? Есть ссылки на краткий синопсис по этому поводу? Я хочу потратить на эту задачу несколько дней, а не месяцев, и я не уверен, что это хотя бы отдаленно достижимо.

8
задан Jeremy Ross 6 June 2011 в 21:29
поделиться