DaughterLanguage.h header

#include <ew/app/DaughterLanguage.h>

Namespace ew::app

CognatePair struct

struct ew::app::CognatePair

A recorded cognate relationship produced by deriving a daughter language: a proto-language headword and the word it became in the daughter, with their shared meaning. This is the evidence of common descent – the "same word, evolved" link a comparative linguist reads off.

Members

QString ew::app::CognatePair::protoWord

The headword in the proto-language (the etymon).

QString ew::app::CognatePair::daughterWord

The word it evolved into in the daughter language, after the sound changes.

QString ew::app::CognatePair::gloss

The meaning both share (carried unchanged from the proto entry).

DerivedDaughter struct

struct ew::app::DerivedDaughter

The result of deriving a daughter language: the new language's complete editable payload and the cognate links back to the proto-form.

Members

ew::core::LanguageFields ew::app::DerivedDaughter::fields

The daughter language's fields – ready to construct a ew::core::Language from. It inherits the proto's sound system (inventory, phonotactics, orthography) and grammar notes, carries the evolved lexicon, and starts with no sound-change history of its own.

std::vector<CognatePair> ew::app::DerivedDaughter::cognates

The proto -> daughter cognate pairs, in lexicon order, for display and for building an etymology once the lexicon carries a structured cognate field.

Functions

DerivedDaughter ew::app::deriveDaughterLanguage(const ew::core::Language &proto, const ew::core::SoundChangeRuleset &ruleset, const QString &daughterName)

Derives a daughter language from proto by evolving its lexicon through ruleset: every headword is run through the ordered sound changes to produce the daughter form, meanings are carried over, and each daughter entry records its proto etymon in its notes. The daughter inherits the proto's inventory, phonotactics, orthography, and grammar notes as a starting point (the user refines from there) and starts with an empty sound-change history. Passing a subset ruleset yields a dialect rather than a full daughter. daughterName names the new language.