Difference between revisions of "Courses/THL"

From LRDE

(Created page with "{{Course |title=Théorie des Langages |acronym=THL |teacher=Akim |period=S1, Ing1 |audience=Tronc-commun |optional course=non |module=Informatique Fondamentale |objectives=Dé...")
 
 
(11 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{Course
 
{{Course
  +
|visible=Yes
 
|title=Théorie des Langages
 
|title=Théorie des Langages
 
|acronym=THL
 
|acronym=THL
|teacher=Akim
+
|teacher=Jonathan,Adrien
 
|period=S1, Ing1
 
|period=S1, Ing1
 
|audience=Tronc-commun
 
|audience=Tronc-commun
  +
|duration=21h
 
|optional course=non
 
|optional course=non
 
|module=Informatique Fondamentale
 
|module=Informatique Fondamentale
|objectives=Définir de façon rigoureuse ce que sont les langages, trouver des moyens de les spécifier, et des techniques pour les reconnaître. Ces techniques sont utilisées dans les outils les plus courants du programmeur :
+
|objectives=Définir de façon rigoureuse ce que sont les langages, trouver des moyens de les spécifier, et des techniques pour les reconnaître. Ces techniques sont utilisées dans les outils les plus courants du développeur :
  +
* Compilateurs / interpréteurs,
+
* Compilateurs / interpréteurs,
 
* Outils à format de donnée structuré (e.g., XML, LaTeX).
 
* Outils à format de donnée structuré (e.g., XML, LaTeX).
 
|content=* Bases
 
|content=* Bases
Line 29: Line 32:
 
** Lex/Flex
 
** Lex/Flex
 
** YACC/Bison
 
** YACC/Bison
 
|references=Parsing Techniques - A Practical Guide http://dickgrune.com/Books/PTAPG_1st_Edition/
 
|references=http://www.lrde.epita.fr/~akim/ccmp/
+
|slides=* https://www.lrde.epita.fr/~akim/thl/lecture-notes/theorie-des-langages-1.pdf
http://www.lrde.epita.fr/~akim/thl/theorie-des-langages.pdf
+
* https://www.lrde.epita.fr/~akim/ccmp/lecture-notes/handouts-4/
  +
|logbook=Courses/ThlLog2016
Parsing Techniques - A Practical Guide http://www.cs.vu.nl/~dick/PTAPG.html
 
 
}}
 
}}

Latest revision as of 14:44, 4 February 2020

Titre

Théorie des Langages

Sigle

THL

Enseignant

Jonathan Fabrizio, Adrien Pommellet

Période

S1, Ing1

Public

Tronc-commun

Contrôle
Durée

21h

Optionnel

non

Module

Informatique Fondamentale

Prérequis
Objectifs

Définir de façon rigoureuse ce que sont les langages, trouver des moyens de les spécifier, et des techniques pour les reconnaître. Ces techniques sont utilisées dans les outils les plus courants du développeur :

  • Compilateurs / interpréteurs,
  • Outils à format de donnée structuré (e.g., XML, LaTeX).
Plan
  • Bases
    • Alphabet
    • Mot
  • Langage
    • Langage Rationnels
    • Langages Rationnels
  • Expressions Rationnelles
  • Automates Finis
  • Grammaires
    • Hiérarchie de Chomsky
    • Grammaires Hors Contexte
    • Automates à Pile
  • Analyse Syntaxique
    • LL(1), LL(k)
    • LR(0), SLR(1), LR(1), LALR(1), LR(k)
    • GLR, BackTracking
  • Générateurs d'analyseurs
    • Lex/Flex
    • YACC/Bison
Documentation
Support
Journaux