You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

325 lines
15 KiB

#import "annwan-grammar.typ": *
#import "@preview/leipzig-glossing:0.3.0": *
#let gl = gloss.with(numbering: true, label-supplement: [Example])
#let sc = smallcaps
#let nh = it => text(font: "Nahan", size: 1.5em, it)
#show: it => conf(
title: "The Mosici Language: A Comprehensive Grammar",
clong-title: "Mosécéc an-ila: Opinaloila Sineap",
main-font: (font: "Minion3"),
clong-font: nh,
it
)
#set table(stroke: none)
= Sounds and Letters
== Phonology and Phonotactics
Mosici has the following vowels (all of which may be nasalised, for a total of 36) and consonants:
#align(center, grid(columns: 2, gutter: 1em,
table(
columns: 3,
align: horizon + center,
table.vline(x: 1),
[], [*Front*], [*Back*],
table.hline(),
[*Close*], [i y], [u],
[*Close-Mid*], [e ø], [o],
[*Open-Mid*], [ɛ], [ɔ],
[*Open*], [a], [],
), table(align: horizon+center, columns: 5, table.vline(x: 1),
[], [*Labial*], [*Coronal*], [*Palatal*], [*Dorsal*], table.hline(),
[*Nasal*], [m], [n], [], [],
[*Plosive*], [p], [t], [], [k],
[*Fricative*], [ɸ β], [s z], [ɕ ʑ], [ʀ],
[*Liquid*], [w], [l], [j], [(w)])
))
The minimal syllable structure is *V* maximal syllable structure is *CCCVCCC*.
Vowel hiatus is not permitted.
== The Nahan Script
Mosici is written in the Nahan script (also know as the Póliahr script). The script is an alphabet composed of the following letters:
#align(center, table(align:horizon+center, columns: 10, table.vline(x: 1),
[*Letter*], nh[p], nh[o], nh[l], nh[i], nh[a], nh[h], nh[r], nh[u], nh[c],
[*Translit.*], [p], [o], [l], [i], [a], [h], [r], [u], [c],
[*Name*], nh[paí], nh[ós], nh[lán], nh[írni], nh[ánta], nh[hapfe], nh[ris], nh[uoc], nh[cal],
[*Name (Translit.)*],[paí], [ós], [lán], [írni], [ánta], [hapfe], [ris], [uoc], [cal],
[*IPA*],[/p/],[/o/],[/l/],[/e/, /j/],[/a/],[∅#footnote[lengthens a preceding vowel]],[/ʀ/],[/w/],[/k/],
table.hline(),
[*Letter*], nh[n], nh[e], nh[s], nh[z], nh[f], nh[v], nh[m], nh[t], [],
[*Translit.*], [n], [e], [s], [z], [f], [v], [m], [t], [],
[*Name*], nh[naol], nh[éstal], nh[sipal], nh[zorel], nh[fasoh], nh[viren], nh[milo], nh[tecio], [],
[*Name (Translit.)*], [naol], [éstal], [sipal], [zorel], [fasoh], [viren], [milo], [tecio], [],
[*IPA*], [/n/#footnote[nasalises a preceeding vowel, isn’t pronounced when followed by a consonant]], [/ɛ/], [/s/], [/z/], [/ɸ/], [/β/], [/m/], [/t/], [],
))
There is also the following modified letters and common digraphs. The diacritic on the vowels is called the #nh[sitrapaóha] ‹sitrapaóha›.
#align(center, table(align: center+horizon, columns: 3,
[*Letter(s)*], [*Translit.*], [*IPA*], table.hline(),
nh[ó], [ó], [/u/],
nh[í], [í], [/i/],
nh[á], [á], [/ɔ/],
nh[é], [é], [/i/],
nh[si], [si], [/ɕ/],
nh[zi], [zi], [/ʑ/],
))
#pagebreak(weak:true)
== Vowel Coalescence
Would-be vowel hiatuses are resolved by vowel coalescence. Coalescence happens from both ends of the vowel clusters at the same time (the starting side taking priority) with the following rules:
- If any of the two coalescing vowel is long, the resulting vowel is long
- If the first vowel is nasal, no coalescence happens, instead a /n/ is inserted
- If the second vowel is nasal, the resulting vowel is nasal.
- Repeat until all hiatuses have been resolved
#align(center, table(align: center+horizon, columns: 10, table.vline(x: 1),
table.vline(x: 4), table.vline(x: 7),
[*Second → \ ↓ First*], [*i*], [*y*], [*u*], [*e*], [*ø*], [*o*], [*ɛ*], [*ɔ*], [*a*],
table.hline(),
[*i*], [ji], [jy], [ju], [je], [jø], [jo], [jɛ], [jɔ], [ja],
[*y*], [i], [y], [y], [ø], [y], [ø], [ø], [ø], [ø],
[*u*], [wi], [y], [u], [we], [wø], [wo], [wɛ], [wɔ], [wa],
table.hline(),
[*e*], [i], [ø], [ø], [i], [e], [ø], [e], [ø], [ɛ],
[*ø*], [y], [y], [y], [e], [y], [ø], [e], [ø], [ø],
[*o*], [ø], [ø], [u], [ø], [ø], [u], [ø], [o], [ɔ],
table.hline(),
[*ɛ*], [i], [ø], [ø], [i], [e], [ø], [e], [ø], [ɛ],
[*ɔ*], [ø], [ø], [o], [ø], [ø], [o], [ø], [ɔ], [ɔ],
[*a*], [e], [ø], [o], [ɛ], [ɛ], [ɔ], [a], [ɔ], [ɔ],
))
*Examples*:
#let x = it => text(fill: color.rgb("#800") ,it)
- #nh[sinea] ‹sinea› \*/ɕn#x[ɛa]/ → /ɕn#[*ɛ*]/
- #nh[tráiheíns] ‹tráiheíns› \*/tʀ#x[ɔeː]ɛĩs/ → \*/tʀ#[*øː*]#x[ɛĩ]s/ → \*/tʀ#x[øː#[*ĩ*]]s/ → /tʀ#[*ỹː*]s/
= Morphology
== Nouns
Noun patterns are referenced by 2 parameters: the vowel categories, which
affects plural formation, and the consonant category which affects case marking.
=== Vowel patterns and plurals
There 2 are categories of vowel patterns: plain patterns and accented patterns.
Plain patterns occur when the last vowel of the root of the noun is unmarked (it
doesn’t have a sitrapaóha). The plural in plain patterns is marked by placing a sitrapaóha on the
last vowel of the root of the noun.
Accented patterns occur when the last vowel of the root of the noun already has
a sitrapaóha. The result of pluralisation is dependent of the vowel
Nasalisation is preserved by pluralisation
#align(center, table(columns: 2, [*Root vowel*], [*Plural form*], table.hline(),
nh[ó], nh[uo],
nh[í], nh[íi],
nh[á], nh[o],
nh[é], nh[ie],
))
=== Consonant patterns and cases
There are 3 consonantal patterns: Concatenative, Substitutive I, and Substitutive II.
The concatenative pattern is used when the root of a noun ends in a vowel, or any of the following consonants: /p f v r w l j/, in this case the case marking affix is placed after the root:
#align(center, table(columns: 2, [*Case*], [*Affix*], table.hline(),
[*Nominative*], [∅],
[*Accusative*], nh[-t],
[*Genitive*], nh[-c],
[*Allative*], nh[-si],
[*Illative*], nh[-via],
))
The Substitutive I pattern is used when a noun root ends in /s/, in this case, the case marking replaces the final consonant:
#align(center, table(columns: 2, [*Case*], [*Affix*], table.hline(),
[*Nominative*], nh[-s],
[*Accusative*], nh[-t],
[*Genitive*], nh[-c],
[*Allative*], nh[-si],
[*Illative*], nh[-via],
))
#pagebreak(weak: true)
The Substitutive II pattern is used when a noun root ends in /z/, this pattern is similar to the Substitutive I pattern except the nominative and allative are voiced:
#align(center, table(columns: 2, [*Case*], [*Affix*], table.hline(),
[*Nominative*], nh[-z],
[*Accusative*], nh[-t],
[*Genitive*], nh[-c],
[*Allative*], nh[-zi],
[*Ablative*], nh[-via],
))
In the substitutive patterns if the root ends in a /k/ the genitive is null, and if the root ends in a /t/, the accusative is null.
Here are some examples
#align(center,table(columns: 3, table.vline(x: 1),
[], sc[*sg*], sc[*pl*],
table.hline(),
sc[*nom*], nh[iplesa], nh[iplesá],
sc[*acc*], nh[iplesat], nh[iplesát],
sc[*gen*], nh[iplesac], nh[iplesác],
sc[*all*], nh[iplesasi], nh[iplesási],
sc[*abl*], nh[iplesavia], nh[iplesávia],
) + [#nh[iplesa] “person” (P/C)])
#align(center,table(columns: 3, table.vline(x: 1),
[], sc[*sg*], sc[*pl*],
table.hline(),
sc[*nom*], nh[tráiheíns], nh[tráiheíins],
sc[*acc*], nh[tráiheínt], nh[tráiheíint],
sc[*gen*], nh[tráiheínc], nh[tráiheíinc],
sc[*all*], nh[tráiheínsi], nh[tráiheíinsi],
sc[*abl*], nh[tráiheínvia], nh[tráiheíinvia],
) + [#nh[tráiheíns] “fox” (I-A/S-I)])
#align(center,table(columns: 3, table.vline(x: 1),
[], sc[*sg*], sc[*pl*],
table.hline(),
sc[*nom*], nh[naleóz], nh[naleuoz],
sc[*acc*], nh[naleót], nh[naleuot],
sc[*gen*], nh[naleóc], nh[naleuoc],
sc[*all*], nh[naleózi], nh[naleuozi],
sc[*abl*], nh[naleóvia], nh[naleuovia],
) + [#nh[naleóz] “livestock” (O-A/S-II)])
=== Definite Particle #nh[an-]
The definite is marked by the prefix particle #nh[an-] ‹an-› on the head noun.
This particle has a special pronounciation rule where before a vowel it is not pronounced \*/ãn-/ but /ãt-/. This is a hold-over from Middle Mosici where it was /ant/ (from Nyelavi anətə) in all environments.
*Examples*:
- #nh[farein] /ɸaʀĩ/ “mountain”, #nh[an-farein] /ãfaʀĩ/ “the mountain”
- #nh[iplesa] /eplɛsa/ “person”, #nh[an-iplesa] /ãteplɛsa/ “the person”
=== Locatives
The spatial locative is formed by expressing the noun in the genitive and following it by the particle #nh[la] ‹la›
The temporal locative is formed by expressing the noun in the accusative and following it by the particle #nh[anop].
*Examples*:
- #nh[sialc la] “in a city”
- #nh[an-vint anop] “on the day”
== Verbs
Mosici verbs are inflected for tense and person by a suffix. The gnomic apersonal is used as the lemma form of verbs
#align(center,
table(columns: 12, table.vline(x: 1), table.vline(x: 5), table.vline(x: 10),
[], sc[*1s*], sc[*2s*], sc[*3sa*], sc[*3si*], sc[*1pe*], sc[*1pi*], sc[*2p*] , sc[*3pa*], sc[*3pi*], sc[*inf*], sc[*pcp*],
table.hline(),
sc[*pst*], nh[-if], nh[-in], nh[-ih], nh[-is], nh[-ív], nh[-ím], nh[-ín], nh[-ír], nh[-íz], nh[-i], nh[-ip],
sc[*prs*], nh[-ef], nh[-en], nh[-eh], nh[-es], nh[-év], nh[-ém], nh[-én], nh[-ér], nh[-éz], nh[-e], nh[-ep],
sc[*fut*], nh[-of], nh[-on], nh[-oh], nh[-os], nh[-óv], nh[-óm], nh[-ón], nh[-ór], nh[-óz], nh[-o], nh[-op],
sc[*gno*], nh[-af], nh[-an], nh[-ah], nh[-as], nh[-áv], nh[-ám], nh[-án], nh[-ár], nh[-áz], nh[-a], nh[-ap]
)
)
Note that the #sc[pst.pl] and the #sc[prs.pl] are pronounced identically in all environments.
#align(center,
table(columns: 12, align: horizon, table.vline(x: 1), table.vline(x: 5), table.vline(x: 10),
[], sc[*1s*], sc[*2s*], sc[*3sa*], sc[*3si*], sc[*1pe*], sc[*1pi*], sc[*2p*] , sc[*3pa*], sc[*3pi*], sc[*inf*], sc[*pcp*],
table.hline(),
table.cell(rowspan: 2, sc[*pst*]), nh[oítif], nh[oítin], nh[oítih], nh[oítis], nh[oítív], nh[oítím], nh[oítín], nh[oítír], nh[oítíz], nh[oíti], nh[oítip],
[ytef], [ytẽ], [yteː], [ytes], [ytiβ], [ytim], [ytĩ], [ytiʀ], [ytiz], [yte], [ytep],
table.hline(),
table.cell(rowspan: 2, sc[*prs*]), nh[oítef], nh[oíten], nh[oíteh], nh[oítes], nh[oítév], nh[oítém], nh[oítén], nh[oítér], nh[oítéz], nh[oíte], nh[oítep],
[ytɛf], [ytɛ̃], [ytɛː], [ytɛs], [ytiβ], [ytim], [ytĩ], [ytiʀ], [ytiz], [ytɛ], [ytɛp],
table.hline(),
table.cell(rowspan: 2, sc[*fut*]), nh[oítof], nh[oíton], nh[oítoh], nh[oítos], nh[oítóv], nh[oítóm], nh[oítón], nh[oítór], nh[oítóz], nh[oíto], nh[oítop],
[ytof], [ytõ], [ytoː], [ytos], [ytuβ], [ytum], [ytũ], [ytuʀ], [ytuz], [yto], [ytop],
table.hline(),
table.cell(rowspan: 2, sc[*gno*]), nh[oítaf], nh[oítan], nh[oítah], nh[oítas], nh[oítáv], nh[oítám], nh[oítán], nh[oítár], nh[oítáz], nh[oíta], nh[oítap],
[ytaf], [ytã], [ytaː], [ytas], [ytɔβ], [ytɔm], [ytɔ̃], [ytɔʀ], [ytɔz], [yta], [ytap],
) + [
Conjugation table for #nh[oíta] “_to be high_”
] +
{
let nh = it => text(font: "Nahan", size: 1.25em, it)
table(columns: 12, align: horizon, table.vline(x: 1), table.vline(x: 5), table.vline(x: 10),
[], sc[*1s*], sc[*2s*], sc[*3sa*], sc[*3si*], sc[*1pe*], sc[*1pi*], sc[*2p*] , sc[*3pa*], sc[*3pi*], sc[*inf*], sc[*pcp*],
table.hline(),
table.cell(rowspan: 2, sc[*pst*]), nh[sineif], nh[sinein], nh[sineih], nh[sineis], nh[sineív], nh[sineím], nh[sineín], nh[sineír], nh[sineíz], nh[sinei], nh[sineip],
[ɕnif], [ɕnĩ], [ɕniː], [ɕnis], [ɕniβ], [ɕnim], [ɕnĩ], [ɕniʀ], [ɕniz], [ɕni], [ɕnip],
table.hline(),
table.cell(rowspan: 2, sc[*prs*]), nh[sineef], nh[sineen], nh[sineeh], nh[sinees], nh[sineév], nh[sineém], nh[sineén], nh[sineér], nh[sineéz], nh[sinee], nh[sineep],
[ɕnef], [ɕnẽ], [ɕneː], [ɕnes], [ɕniβ], [ɕnim], [ɕnĩ], [ɕniʀ], [ɕniz], [ɕne], [ɕnep],
table.hline(),
table.cell(rowspan: 2, sc[*fut*]), nh[sineof], nh[sineon], nh[sineoh], nh[sineos], nh[sineóv], nh[sineóm], nh[sineón], nh[sineór], nh[sineóz], nh[sineo], nh[sineop],
[ɕnøf], [ɕnø̃], [ɕnøː], [ɕnøs], [ɕnøβ], [ɕnøm], [ɕnɛø̃], [ɕnøʀ], [ɕnøz], [ɕnø], [ɕnøp],
table.hline(),
table.cell(rowspan: 2, sc[*gno*]), nh[sineaf], nh[sinean], nh[sineah], nh[sineas], nh[sineáv], nh[sineám], nh[sineán], nh[sineár], nh[sineáz], nh[sinea], nh[sineap],
[ɕnɛf], [ɕnɛ̃], [ɕnɛː], [ɕnɛs], [ɕnøβ], [ɕnøm], [ɕnø̃], [ɕnøʀ], [ɕnøz], [ɕnɛ], [ɕnɛp],
)} + [
Conjugation table for #nh[sinea] “_to be complete_”
]
)
=== Tense and Person
=== Mood and Aspect
=== Stative verbs and verbal nouns
= Numbers
Mosici uses base six numerals. Ordinals are formed by using the number in the genitive. Numbers are notatied using bijecteve positional notation with the letters #nh[m l t f n] and #nh[s] as digits, least significant digit to the left, sometimes written inbetween #nh[()] to limit ambiguity. The ordinal shorthand is a subscript #nh[c] (for example #nh[(mlss#sub[c])] “1525#super[th]”).
#align(center, table(columns: 4,
[*Decimal*], [*Senary*], [*Shorthand*], [*Number*],
table.hline(),
[1], [1], nh[m], nh[mon],
[2], [2], nh[l], nh[lí],
[3], [3], nh[t], nh[tep],
[4], [4], nh[f], nh[vol],
[5], [5], nh[n], nh[nar],
[6], [10], nh[s], nh[sel],
table.hline(),
[7], [11], nh[mm], nh[mon-sel],
[8], [12], nh[lm], nh[lí-sel],
[12], [20], nh[sm], nh[sellí],
[13], [21], nh[ml], nh[mon-sellí],
[18], [30], nh[sl], nh[seltep],
[24], [40], nh[st], nh[selvol],
[30], [50], nh[sf], nh[selnar],
[36], [100], nh[sn], nh[siant],
table.hline(),
[37], [101], nh[ms], nh[mon-siant],
[42], [110], nh[ss], nh[sel-siant],
[43], [111], nh[mmm], nh[mon-sel-siant],
[72], [200], nh[snm], nh[siantlí],
[108], [300], nh[snl], nh[sianttep],
[144], [400], nh[snt], nh[siantvol],
[180], [500], nh[snf], nh[siantnar],
[216], [1000], nh[snn], nh[starel],
table.hline(),
[432], [2000], nh[snnm], nh[starelí],
[648], [3000], nh[snnl], nh[stareltep],
[864], [4000], nh[snnt], nh[starelvol],
[1080], [5000], nh[snnf], nh[starelnar],
[1296], [10000], nh[snnn], nh[pamonstrel]
))
For larger numbers, series of powers of 1296#sub[DEC] are used. They are of the form #nh[pa]...#nh[strel]. For example:
- #nh[pamonstrel] = 1296#super[1] = 1296
- #nh[palístrel] = 1296#super[2] = 1679616
- #nh[pasiantstrel] = 1296#super[36]
Shorthand is typically divided in groups of four, separated by spaces. For example #nh[(msln ffls nt)] = 40 0244 5301#sub[SEN] = 40 441 573#sub[DEC].
= Syntax
= Sample texts
#dict(data: yaml("dictionnary.yml"), wformat: nh, key: it => {
let alphabet = (p: "a", o: "b", ó: "b", l: "c", i: "d", í: "d", a: "e", á: "e", h: "f", r: "g", u: "h", c: "i", n: "j", e:"k",é:"k",s:"m",z:"n",f:"o",v:"p",m: "q", t:"r","-":" "," ":" ")
let a = ()
for letter in it.w {
a.push(alphabet.at(letter))
}
return a.join()
},
debug: true
)