Question

Bonjour les collègues programmeurs, je discutais d'un projet l'autre jour avec un de mes collègues et j'étais curieux de voir ce que les autres avaient à dire ou si une telle chose existait déjà.

Arrière plan

Il existe de nombreux langages de programmation. Il existe de nombreux éditeurs IDE et source qui mettent en évidence et modifient le code source. Suivre parfaitement et exactement les règles d'une langue pour présenter des options de réduction automatique et comprendre les lunettes dans le code est plutôt complexe. Cette tâche est suffisamment complexe pour que la plupart des IDE implémentent différents éditeurs de source en tant que plugins qui réimpliquent souvent les mêmes fonctionnalités encore et encore mais d'une manière différente (NetBeans).

D'après ce que je peux dire à la plupart des analyseurs d'IDE et des éditeurs source, les analyseurs de réimplémentation qui utilisent des expressions régulières, ou certains méta-syntaxes Forme naur pour décrire les langues grammer génériquement. Ces analyseurs sont mis en œuvre encore et encore et encore.

Question

Quelqu'un a-t-il tenté d'unifier ou de décrire un ensemble de fonctionnalités via une API et d'avoir une interface cohérente pour analyser divers langages de programmation et dialectes. Je ne décris pas un IDE - mais une API cohérente pour aucun programme à utiliser pour analyser et obtenir des méta-installations à partir du code source.

Je me rends compte que divers langages de programmation offrent de nombreuses fonctionnalités différentes qui sont difficiles à «résumer» en un ensemble de fonctionnalités, mais je pense que ce serait une entreprise intéressante.

Il me semble que cela pourrait permettre aux auteurs d'interprètes d'aider à maintenir un Intepreter de Grammer central pour leur langue. La fondation Python pourrait maintenir l'API Python Grammer, ANSI l'API C Grammer, Oracle l'API Java Grammer, etc.

Exemple d'utilisation

S'il s'agissait des générateurs de documentation de code API, pourrait théoriquement fonctionner dans tous les dialectes et langues à un certain niveau. Peu importe que votre projet utilise 5 langues différentes, une seule application pourrait les documenter tous et les commentaires et les doc-tags à l'intérieur.

Quelqu'un a-t-il tenté cela de manière exhaustive?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top