Skip to main content

System for the simulation of language evolution

Project description


Build Status codecov

Abzu system for simulating language evolution, which used the ngesh and alteruphono libraries. It is named after the underground aquifers that were the domais of Enki, the Sumerian god of language and confusion.

Please remember that abzu is a work-in-progress.


In any standard Python environment, abzu can be installed with:

pip install abzu

The pip instalation will also fetch dependencies, such as ngesh and alteruphono, if necessary. Installation in a virtual environment is recommended.

How to use

The library is under development, and the best way to understand its usage is to follow the tests.

A quick generation of a vocabulary following a random phonological system can be performed from the command-line:

$ abzu
Language: Aburo
  1:    oː e
  2:    i ŋ ẽ
  3:    f ɔ j ŋ
  4:    e h ɪ̃ s eː ʃ
  5:    i
  6:    k ɔː m ĩ ŋ uː
  7:    h a eː
  8:    u f
  9:    iː p
  10:   a o a ŋ

The utility accepts size (indicating the number of words in the vocabulary) and seed (for reproducibility) parameters:

$ abzu --size 15 --seed jena
Language: Rafvo
  1:    a m ã
  2:    e m e ɔ n ɨ n
  3:    p ɪ ʒ ɔ
  4:    ĩ b a ɔ
  5:    i n
  6:    ɪ a ŋ u j ʃ
  7:    t ɪ l u
  8:    n ɔ e
  9:    d u ɔ e ʃ
  10:   i s ɪ x
  11:   a b ẽ j
  12:   ɪ̃ ɪ b l a t u ʂ
  13:   e m ɔ n a ɪ ɲ e j s
  14:   n ɪ̃ tʃ ĩ ã
  15:   a ʃ a


See internal notes

How to cite

If you use abzu, please cite it as:

Tresoldi, Tiago (2019). Abzu, a system for simulating language evolution. Version 0.0.1dev. Jena. Available at

In BibTex:

  author = {Tresoldi, Tiago},
  title = {Abzu, a system for simulating language evolution},
  howpublished = {\url{}},
  address = {Jena},
  year = {2019},


Tiago Tresoldi (

The author was supported during development by the ERC Grant #715618 for the project CALC (Computer-Assisted Language Comparison: Reconciling Computational and Classical Approaches in Historical Linguistics), led by Johann-Mattis List.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for abzu, version 0.0.1.dev0
Filename, size File type Python version Upload date Hashes
Filename, size abzu-0.0.1.dev0-py3-none-any.whl (75.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size abzu-0.0.1.dev0.tar.gz (87.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page