L'analyse syntaxique est une tâche informatique consistant à donner un sens quelconque à un texte. Cette tâche est absolument centrale dans toute activité informatique. Le sens étant généralement défini par une structure de donnée manipulable par l'ordinateur et le texte étant l'objet privilégié de transmission de l'information entre humains, humain et machine ou entre machines.

Dans ce cours, nous aborderons la notion de langages, nous étudierons leurs classes et leurs modèles de description associés avec les algorithmes d'analyse privilégiés de ces différentes classes.

Nous aborderons essentiellement la classe des langages hors-contexte. Les langages réguliers (rationnels/d'états finis) ayant été étudiés en L2, ils ne seront abordés que très rapidement.