Где лучше анализировать программный код в онлайн редакторе?
Здравствуйте. Я тут поставил перед собой безумную задачу, написать визуальный редактор кода, курю матчасть о компиляторах и думаю, как лучше реализовать данную задумку.
Есть небольшая системка, браузерный редактор, позволяет просматривать структуру файлов с папками, создавать удалять, и самое главное редактировать текстовые файлы. Браузер показывает информацию и позволяет командовать узлами, сервер это дело сохраняет. Но это основа.
Вопрос вот в чем, как лучше оформить сам редактор. для визуального редактора необходимо представление кода в виде синтаксического дерева, само редактирование дерева - не проблема (ну относительно), проблема это дерево получить.
Насколько я понимаю дерево получается путем лексического а потом синтаксического анализа исходного кода, и тут есть 2 варианта, анализировать код на сервере на python и отдавать на морду готовое дерево, либо отдавать на морду код, и получать дерево с помощью JS.
Читание интернетов не дало информации по анализаторам на JS, а вот на питоне таких несколько точно есть, т.е. анализировать на питоне будет проще, но так как редактирование сильно завязано на грамматику языка, в идеале морде знать не только структуру синтаксического дерева, но и правила отношения его узлов, а это уже здоровый кусок тех самых анализаторов.
По поводу языка, я стараюсь не делать привязки к конкретному языку, для начала будет питон, а потом и остальное.
Сам я врядли осилю проектирование такой сложной штуки, поэтому желательно все таки использовать библиотеки.
В общем вопрос, где лучше оставить анализаторы?
И если есть у кого нибудь инфа по библиотекам для JS, для анализа исходников. Или инфа по самописным анализаторам (есть несколько статей, достаточно поверхностных), а так же буду благодарен за советы где и почему лучше анализировать исходники.