This shows you the differences between two versions of the page.
alf:teme:tema2_java [2023/04/22 12:43] amalia.simion [Format AST] |
alf:teme:tema2_java [2023/05/04 19:17] (current) amalia.simion [Définition des fonctions] |
||
---|---|---|---|
Line 4: | Line 4: | ||
<note important> | <note important> | ||
- | Date limite: ** 14 Mai, 23:55 ** \\ | + | Date limite: ** 7 Mai, 23:55 ** \\ |
- | Points: ** 2 points ** de la note finale \\ | + | Points: ** 3 points ** de la note finale \\ |
- | Téléchargez le devoir: [[https://classroom.github.com/a/UyBDhRP9 | GitHub Devoir 3]] \\ | + | Téléchargez le devoir: [[https://classroom.github.com/assignment-invitations/d14b0efea56ce0e34d65b76a8dd78d3c | Devoir 2]] \\ |
Téléchargement tardif: ** 1 point / jour ** (maximum 2 jours) \\ | Téléchargement tardif: ** 1 point / jour ** (maximum 2 jours) \\ | ||
</note> | </note> | ||
Line 17: | Line 17: | ||
Par exemple, dans ce cas, le fichier de sortie sera ''script.json'': | Par exemple, dans ce cas, le fichier de sortie sera ''script.json'': | ||
<code bash> | <code bash> | ||
- | node main.js script.ast script.json | + | java ... com.example.Main script.alf script.json |
</code> | </code> | ||
Dans l'exemple suivant, tenant compte du fait que le deuxième paramètre manque, le fichier de sortie sera automatiquement généré, ayant le nom ''script.ast.json'': | Dans l'exemple suivant, tenant compte du fait que le deuxième paramètre manque, le fichier de sortie sera automatiquement généré, ayant le nom ''script.ast.json'': | ||
<code bash> | <code bash> | ||
- | node main.js script.ast | + | java ... com.example.Main script.alf |
</code> | </code> | ||
Line 80: | Line 80: | ||
===== Questions ===== | ===== Questions ===== | ||
- | Si vous avez des questions concernant les devoir, posez-les en postant un issue sur github [[https://github.com/upb-fils/alf.git|repository]] avec le format //[alf] <titre de la question>//. Vous aurez besoin d'un compte github pour cela. | + | Si vous avez des questions concernant les devoir, posez-les en postant un issue sur github [[https://github.com/UPB-FILS-ALF/questions|repository]] avec le format //[alf] <titre de la question>//. Vous aurez besoin d'un compte github pour cela. |
<note warning> | <note warning> | ||
Line 86: | Line 86: | ||
</note> | </note> | ||
- | Si vous souhaitez recevoir un e-mail lorsque des problèmes sont signalés ou lorsqu'il y a de nouveaux messages, accédez au site github [[https://github.com/upb-fils/alf|repository]] et cliquez sur //Watch//. | + | Si vous souhaitez recevoir un e-mail lorsque des problèmes sont signalés ou lorsqu'il y a de nouveaux messages, accédez au site github [[https://github.com/UPB-FILS-ALF/questions|repository]] et cliquez sur //Watch//. |
| | ||
Line 358: | Line 358: | ||
Voir la classe **Definition.java** et pour le type la classe **Function.java**. Si vous voulez voir le json de cette classe vous pouvez creer un instance et afficher //myObj.toJSON()// | Voir la classe **Definition.java** et pour le type la classe **Function.java**. Si vous voulez voir le json de cette classe vous pouvez creer un instance et afficher //myObj.toJSON()// | ||
[[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/4_function|Exemple]] | [[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/4_function|Exemple]] | ||
+ | |||
+ | <note important> | ||
+ | Le Block du statements a l'intrieur d'un fonction va avoir la ligne egale avec la ligne du token BEGIN | ||
+ | </note> | ||
Line 416: | Line 420: | ||
[[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/5_branch|Exemple]] | [[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/5_branch|Exemple]] | ||
+ | |||
+ | <note important> | ||
+ | Pour la branche if, les Blocks du statements a l'interieur de la branche if vont avoir la ligne egale avec le premiere statement. Si on n'a pas la branche else, le block pour else va avoir la ligne egale avec la ligne du token IF. | ||
+ | </note> | ||
==== Boucles ==== | ==== Boucles ==== | ||
Line 464: | Line 472: | ||
[[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/3_loop|Exemple]] | [[https://github.com/UPB-FILS-ALF/devoir-3-tests/tree/master/tests/3_loop|Exemple]] | ||
+ | |||
+ | <note important> | ||
+ | Pour tous le types de boucles, le Block de statements a l'interieur de la boucle va avoir la ligne egale avec la ligne du premiere statement. | ||
+ | </note> | ||
===== BONUS ===== | ===== BONUS ===== | ||
Line 505: | Line 517: | ||
<note warning> | <note warning> | ||
- | Pour plusieurs de detailles sur l'aspect des JSON pour chaque elements, consulter le repository avec les tests: | + | Pour plusieurs de detailles sur l'aspect des JSON pour chaque element, consulter le repository avec les tests: |
[[https://github.com/UPB-FILS-ALF/devoir-3-tests|Tests repository]] | [[https://github.com/UPB-FILS-ALF/devoir-3-tests|Tests repository]] | ||
- | Chaque fichier //nom.alf// represent un fichier avec le code source qui doit etre teste, et un fichier equivalent //nom.alf.json// avec la sortie. | + | Chaque fichier //nom.alf// represent un fichier avec le code source qui doit etre teste, et les fichiers equivalent //nom.alf.json// represent la sortie. |
</note> | </note> | ||