Online Tutorial for Computational Morphology

As part of SAFMORIL, we offer an online tutorial for XFST-based morphology development at CSC Notebooks. The tutorial is implemented as python notebooks which use HFST python interface.

The tutorial ”Computational Morphology with HFST”  is an adaptation of the teaching material of the course ”Computational Morphology” taught by Mathias Creutz in the Master’s programme “Linguistic Diversity and Digital Humanities” at the University of Helsinki. The original course and its exercises have been created by Mathias Creutz and co-developed by Senka Drobac. Using an earlier version of the course material, Erik Axelson has developed a Jupyter notebook interactive version. The tutorial uses the same examples and exercises, but HFST command line tools have been replaced with HFST Python interface.

At the moment, access requires a HAKA account. If you do not have a HAKA account, you can contact SAFMORIL Helpdesk to arrange for local accounts or request a visitor account directly from CSC service desk. You also need a join code that you can request from SAFMORIL Helpdesk. New logins are available during the fall (Sept 1 – Dec 15) and spring (Jan 15 – May 15) semesters.


The tutorial is divided into seven parts, corresponding to the original lectures 1–3 and 5–8.

  1. Theories of morphology, generators and analyzers, lexc
  2. Finite-state basics, xfst rules
  3. Disambiguation, probabilities, finite-state networks summarized
  4. (no tutorial for this lecture)
  5. Guessers, stemmers, regular expressions in xfst
  6. Twolc, two-level rules
  7. Flag diacritics, non-concatenative morphology
  8. Optimization of finite-state networks