Tokenization de code java
Fermémamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 18 déc. 2023 à 20:00
- Tokenization de code java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Code ascii de a - Guide
- Code puk bloqué - Guide
- Java apk - Télécharger - Langages
4 réponses
Modifié le 18 déc. 2023 à 11:19
Bonjour,
Soit tu adapte l'analyse au bout de code saisi (dont tu connais la syntaxe), par comparaison de chaines.
Soit tu fais un analyseur syntaxique "générique" (pour le langage saisi)
Mais là,c'est une autre paire de manches...
Cela dépend du cours auquel ça se rapporte.
La peut être j'ai mal formulé
C'est ce le code source qui sera saisi est du langage Java.maintenant si dans le code source il y'a des erreurs syntaxiques dés que j'appuie sur le button il affiche la ligne qui contient l'erreur et explique l'erreur ou les erreurs syntaxiques repérées
Modifié le 18 déc. 2023 à 16:19
ça ne change rien à ma réponse.
Après, tu peux toujours vérifier que la machine "Java" (qui doit bien comporter son analyseur syntaxique, débugueur) est présente sur le pc, et faire un appel Python à l'analyseur de la machine "Java". (élégant mais pas facile)
Sinon, c'est la méthode "bourrin" (qui ne fera pas plaisir à ton prof) de la première option de ma première réponse (qui relève de l'illusionnisme)
Modifié le 18 déc. 2023 à 20:08
Bonjour,
En python il existe un modèle spécifiquement dédié à l'analyse syntaxique, c'est le module ast, qui s'appuie sur un fichier qui spécifie la grammaire du langage (voir ici). Par exemple, pour python, la grammaire est spécifiée dans les sources de python (e.g. /usr/src/python3.12/Parser/Python.asdl
sous Linux). Malheureusement, c'est le seul fichier asdl livré avec python. Toute la difficulté sera donc de trouver un fichier asdl pour java si tu souhaites utiliser ce module.
Une autre piste consiste à regarder certains module python dédiés à la tokenization de code java, notamment antlr, sctokenizer ou code-tokenizer.
En outre, le dépôt d'antlr pointe vers ce dossier qui rassemble les grammaires de nombreux langages de programmation (au format g4 donc vraisemblablement propre à antlr), dont java. À défaut d'utiliser antlr, je suppose que ça pourrait être un point de départ pour écrire la grammaire au format asdl.
Bonne chance