Teaching the theory of formal languages and automata in the Computer Science undergraduate curriculum

The theory of formal languages and automata form an essential component of the undergraduate Computer Science curriculum both nationally and internationally. This paper reports on the experiences of teaching the theory of formal languages and automata at universities worldwide. The paper discusses how this area is incorporated into the Computer Science undergraduate curriculum, teaching and learning difficulties generally encountered, different teaching methodologies employed and teaching and learning aids. The paper also identifies further areas of research into improving the teaching and learning of the theory of formal languages and automata.