A syntactic analyser that detects the nature of the components of an expression (identifier, +, *, (, ) ) and that generates its automaton