Skip to main content

Trinity College Dublin, The University of Dublin

Menu Search

Module Descriptor School of Computer Science and Statistics

Module CodeCS2LL3
Module NameIntermediate Programming and Natural Language Processing
Module Short Title
Semester TaughtMichaelmas and Hilary terms
Contact Hours3 hours per week
Module Personnel
Learning Outcomes

When students have successfully completed this module they should be able to:

  • write, compile and debug C++ code, using command-line tools rather than an integrated development enviroment
  • write code to handle recursive, dynamically allocated data structures, such as syntax trees or the transition graph of a finite state automaton
  • use inheritance to exploit third-party libraries such as for implementing GUIs
  • understand and work with implementations of Finite State Automata and regular languages appreciating both their strengths and weakness and the areas of language processing to which they might be applied
  • understand and work with implementations of context-free grammars and parsers, including stack-based and chart parsers.
  • understand and work with implementations of probabilistic methods in language processing such as statistical parsers, the use of Hidden Markov Models for speech recognition or statistical machine translation
Learning Aims

To engender a mastery of the fundamentals of programming in C++, both building on, and differentiating from, prior experience with Java, should the students have that. To likewise provide a solid grounding in the major concepts and algorithms used in Natural Language Processing, exploring many of these through implementations in C++

Module Content
Recommended Reading List

C++ Program Design J.Kohoon and J.Davidson
Speech and Language Processing.D.Jurafsky and J.L.Martin.
Statistical Machine Translation. Philipp Koehn

Module Prerequisites
Assessment Details

Short assignments, mainly involving programming.  One more substantial project involving implementation of natural language processing techniques.

Assessment is based on 30% coursework and 70% written examination in both annual and supplemental examinations.

Academic Year of Data