What is Trōhēnnu?
Trōhēnnu is a project started by Jonathan North Washington, with a certain amount of input and support by Tristan Alexander McLeay (and later by Michael Meservy).
Trōhēnnu will store vocabulary for any number of languages, as well as store sound change mappings between related languages. For example, one could store Latin vocabulary and Spanish and French vocabulary, as well as mappings of the sound-changes between them. When viewing Latin, one could look at all the forms derived from vocabulary, and when viewing Spanish or French, one could see the source for vocabulary. One could also check easily (by colour coding or some similar feature) whether the sound changes provided accurately provide the derived form.
This is useful for historical work in natural languages and conlangs alike; in conlangs, one could derive whole lexicons through the click of a button (after setting up the sound changes, and maybe remapping some vocabulary).
Something similar seems to exist? Further investigation is required. Wordcorr
A list of features desired in Trōhēnnu.
Trōhēnnu's core is a group of lexical databases and sound change databases, which a sound change applier and some GUI management can manage.
Aside from being a database and tool to do comparative/historical linguistics, nice graphs should be outputtable. Ghoul will do this.
- All morphemes stored in lexicon (not just "vocabulary")
- Specify what sort of morphemes things are (e.g., bound suffix) and what it attaches to (e.g., verb stem)
- Store rules needed for synchronic phonology
- Show paradigms, e.g. of verb where all verbal morphemes are applied, applying phonology
- For "irregular" forms, either stored separately or—ideally—derived (suppletion, alternation, unlevelled paradigms, even borrowing from other dialects)
The currently intended design of trōhēnnu consists of
- Backend in python or perl
- Data stored in SQLite database
- Communication with clients via XML-RPC
The backend for Trōhēnnu will integrate a database consisting of [for various languages] vocabulary, various forms of the vocabulary (such as conjugated and declined forms, derivable by rules just like other words), sound changes, and vocabulary/sound change mappings (between languages) with a sound change applier and an XMLRPC interface providing numerous functions for manipulating the database contents and applying sound changes.
Any number of clients could be written, since the infrastructure for data manipulation is built into the server: clients can be web-based, GTK-based, Cocoa-based, or whatever. Following are some conceptions of how certain functionality would work in a client.
Sound Change Editor Window
The following conception of a sound change editor window has four quadrants.
Going clockwise, starting at the top left, the first quadrant allows one to add, remove, and edit individual sound changes which make up a sound change group. To the right of that, all available sound change groups are listed, and they can be added to a given history's list of sound changes, which is located in the bottom-left quadrant. There they can be sorted or removed. The bottom-right quadrant shows the entire set of sound changes in the history—selecting one sound change selects the corresponding sound change group in the bottom-left quadrant.
The window would be given information about which history is to be edited and would fill the bottom two quadrants with that information. The top-right quadrant would be filled with all available sound changes, each of which the top-left quadrant would be able to edit.