Derivation
Rules as understood
Step by step
How the rules work
Writing a rule
A rule is target > change / left _ right. The _ marks where the target sits, and / left _ right may be left off to apply everywhere. → works the same as >.
t > d / V _ V: plain sounds.∅ > ɪ / s + _ z:∅inserts a sound.l > ∅ / C + _ #:∅on the right deletes.s > ʃ / _ i: context can be one-sided.k > g @ltr: put@sim,@ltr, or@rtlat the end to override the global direction for that rule.
Features and classes
Use [+voice -continuant] for feature bundles, with + or - in front of every feature. Single capitals are classes: C (non-vowel) and V (vowel) exist by default.
N = m/n/ŋ: define a class from IPA symbols.S = [+fricative]: define a class from features.- Known features include
vowel consonantal sonorant continuant stop fricative affricate nasal approximant rhotic lateral voice labial dental alveolar retroflex palatal velar uvular glottal high low front back round tense stressed long aspirated ejective. - Shortcuts work too:
consforconsonantal,contforcontinuant,approx,lat,lab,alv,pal,vel,asp, and more. [αback]withα β γ δcopies a value:[+nasal] > [αlabial βalveolar γpalatal δvelar] / _ [+stop αlabial βalveolar γpalatal δvelar]assimilates nasal place.- Changing features rewrites to the nearest IPA symbol, adding
̃ ː ʰ ʼ ◌̥ ◌̬as needed. If no exact symbol exists you get a warning and the closest match.
Contexts and boundaries
#: word edge, as in[-sonorant +voice] > [-voice] / _ (+) #.+: morpheme boundary. Write it in words with+, e.g.kæt+z.(+)makes it optional.$: syllable boundary. Write it in words with., and uncheck “Ignore syllable dots” so rules can see it.(X): optional element.{a, b}: pick either branch.X*: zero or more of X.(C)%is not a thing here. Optionality is plain(C).
Application direction
Rules run top to bottom; the table shows each intermediate form, with · when a rule changes nothing. Order matters: try swapping the Russian l > ∅ and devoicing lines in the preset to see feeding go wrong.
sim: find all matches first, then change them at once (good for clean, parallel changes).ltr: scan left to right and keep applying (needed for spreading, like vowel harmony).rtl: scan right to left.
Words and IPA input
- Separate words with spaces or new lines (up to 500 are shown).
ˈmarks the next syllable stressed;ˌmarks secondary stress. Stress is a[+stressed]vowel feature rules can match.- Affricates like
tʃ dʒ ts, tie bars, and modifiersʰ ʷ ʲ ˠ ˤ ʼ ː ˑ ˔plus combining diacritics are parsed as one segment. - Unknown symbols still run, but feature rules cannot match them.
Sharing and deep links
Every change updates the address bar. Copy the link and anyone who opens it sees your exact words, rules, direction, and dot setting.
If you build links by hand, the parameters are w (words), r (rules), m (sim, ltr, or rtl), and dots (1 or 0).
Got a good one?
Share your sound system and favorite derivations with the club on Discord, or bring it to a Friday workshop.
Join our Discord