Generating Languages

Or at least a quick foray into a much more complicated topic than what I can possibly wrap my head around.

When you do not understand a language, its words might look completely random. If you just generate any random sequence of letters, it will not look anything close to language. This is because languages have a "tone" to them. I might not understand Polish, but I can recognise it by its use of "cz" and "tch", that is, certain phonemes especially common in Polish.

All languages have a wide range of phonemes, but some are used more often than others. These phonemes are put together into syllables, of which all languages have a wide range, but some are used more often than others. Again, syllables are combined into words, with which dictionaries can be filled, but as you all know, most of those words are rarely used.

We can use this phenomenon of common and rare elements to generate languages that have a certain "tone" that will distinguish them from each-other and from random letters put together.

GENERATING NEW LANGUAGE
Presenting: the Ofroazh language!

Ov fro frophofroa arkpheamphofroazh do arkpheamphofroazh dophoar.
Pho ovort ovur orkurov do fro, phophoardo fro kvo do phoa, ov phopheamdo ov ortdoh phoafrofroazh dopheamovfroazh, ov fro ortoark ark ov - do ovfroazhphoa arkpheamphofroazh phofroadohpheizh avphoar ortov fro, "do phoakvopheam ortdoh phoa phoafrofroazh."
Froa fro ov urort phophoardo dophoar; phofroazh?
Phopheizhfroazh phoakvopheam ov urort avphoar fro pho!
Jidoh ov phoa phopheamdo fro pho phofroadohpheizh, "ov ovort pho phoa fro do."
Ovfroazhphoa ort do fropho urort phofroazh!
Do phoa ort phoa oavov - froaji phofroazhov phofroazh do phophoadodork froaji urort - ortfroazh ov phodo phoa phophoado ort: fro ov fropho ortfroazh avphoar ovfroazhphoa ort pho.
Arkpheamphofroazh pho ortdoh ort ov froa phakvofrodo do...
Phoa ov ort fro kvo, phophoadodork kvo froa ovpheizhoark do phodo, phophoado fro do ov ort; phoa.
Do froa phoa urort dophoar fro ov; orkoark pho do orkoark phoa do.

Here we see the first language - Ofroazh. It has a lot of Ov's, Fro's and Phoa. Still, there are are more rarely seen sounds here and there, like Jidoh. We can see the rule of common and rare phonemes, syllables and words at play. Before I go into some other necessary functions, let me show a different language, just to show that the "tone" truly is unique:

GENERATING NEW LANGUAGE
Presenting: the Raflarp language!

Ax axuest alb raflaroowha axast alb: raflafuraq rafu flaroorawha uerpdral wha ax...
Rueflararax ulast wha uerpalast fla rafu wharuerust aluel!
Wharuerust axraqfool ax wha rueflararax...
Aluel ax rawharue raflarustrue ax.
Fla wha ruefu aluel albastuelfool axraqwha fla al.
Wha alb ra furaq fu - wharuerust fla ax wha axast raflaroowha axraqwha.
Fla axuest fu wha axuest ast alb, fla ul furaq wha ra, ueq ast wha rafu alb, uest astraxuerpal uel aluel ast.
Ast raflarustrue ast ax aluel.
Ax alaxrustwhuel alb ax alb uel, ax ra ueq axraqwha fla ueq - "ul fu ueq ul fla - fu ra fu ul rafuraq ast fu."
Fu axoux rafuraq ra furaqroo astraxuerpal alb: "ax fla ra axast ast wharuerust wha..."

Raflarp, is most recognisable by its Ax's, as well as the two other syllables making up its name, Ra and Fla. Try to read it out loud. It has a certain ancient feeling to it if you ask me, reminding me of Latin.

So, apart from using some elements - phonemes, syllables and words - more often than others, what else do I do? Well, first of all, syllables are not just random phonemes stitched together, nor are words just random syllables.

Phonemes have to come in at least three classes: vowel (including diphthongs) and two kinds of consonant clusters, for respectively the beginning and end of a syllable. For instance, "bl" can be at the beginning of a syllable, but not at the end. These have to be distinguished.

How do you put phonemes together into syllables? It might seem simple just to sandwich them, consonant-vowel-consonant (CVC). This will however create very clunky words where there are way too many consonant-clusters compared to vowel-clusters.

Another option is to just do consonant-vowel (CV) or vowel-consonant (VC), but this means double consonant clusters will never occur, as in "op'tion", as well as excluding either words starting with a vowel or ending with a vowel.

My solution was to have three kinds of syllables - CV, VC and CVC. If you just switch randomly, you might have two vowel-clusters next to each-other, which is illegal. So, the program keeps track of the last type of syllable used. It can change from CVC to either CV or VC, but CV can only change to itself or CVC, and VC can only change to itself or CVC. I have also tuned it so that CVC is quite rare, meaning that double consonant clusters, too, are rare. If you look at this neat paragraph of English, you will see that CC is pretty rare, overall.

GENERATING NEW LANGUAGE
Presenting: the Brorearp language!

Erp ex eas xenoseasbres erg brea exerpeas, mibre xe eas ex erpeseas ur.
Xe brebrorgerp eas ex xeminiris eas bre.
Ni erg ergerp xe eas ex bre, ex xeminiris ni erpeseas ex ix ex, urosbres eird brebrorgerp erp ix!
Ex eas xe eas bre easesex; ur ni breaxe breni eirdergbres ur.
Erg xe bre ix urbrorgbaim easerpesos eas?
Mi brea ex bre eas, ni erpbrorgbres bre easesex eas xemibres.
Eas brea erg ergbrergris ex nimible - "ur erp brea eas ble nibroxebre ni, eas erg ni erpexeas eas."
Erg erp erg oserp breaxe ur nibrorg eas, breni brobrerearp ergrearp brea bre.
Bre urbrorgbaim erg brea eas erg ex xe!
Xe erg eas erp eird breami.

The solutions for syllables and phonemes are the most advanced ones I did, really. When it comes to words, I made sure that common words are generally shorter, since languages tend to shorten articles and the like. I also made sure that syllables would not repeat within a word, and words would not repeat immediately in sentences. The rest was just to let the program run wild.

GENERATING NEW LANGUAGE
Presenting: the Orfhil language!

Naibroa broajaot feajaot broa sti, "iv hao ing broa noafi feakvoavkro iv: hao eng orf broajaot ing eng fea ing!"
Jufeal broa eng ingeng eng sti broa noahilorf, ilengiv feajaot broa ingeng broajaot orf eng, sti eng fea noafi fi.
Orf eng ingorffoangnils sti naikrofea eng feafunghil!
Sti eng hao broa fea, eng finingkrohil ing feakvoavkro broa iv hao.
Broa ing kronils broakro hao iv broa feahaobroa.
Ivkvoav fea sti orf engingjaot eng ing orf, hao ingnongkvaol krobroa eng ils ing - broa sti fea naifea ingeng orf ingorffoangnils.
Broa iv stisteakrofi eng orf.
Noafi iv hao kronils juhil eng iv ing, "feanai iv broajaot jufeal noahilorf iv eng..."
Orf ingeng ing engnong ingeng hao orf: hao.
Broa naibroa ivingjaot iv ingeng eng: iv...


Well, one more thing. Sentence structure! The program chooses a number of words, between 5 and 8, before stopping the sentence. Sentences, however, have a chance to "revive", using a comma, dash, semicolon or colon, gaining 5-8 more words, or in the case of the colons, sometimes just one or two. The full stop at the end of the sentence is sometimes replaced with an exclamation point, question mark, or three ellipses. Finally, when the sentence revives, it has a chance to start a quote, which the program keeps track of so it can end it again. Nothing worse than unmatched citation marks.

I think that's it. I mean, at least until I figure out a use for this program and then, necessarily, expand its functioning. Adding sentence structure instead of all words being equal might be a start, for instance. Or creating specific prefixes and suffixes.


GENERATING NEW LANGUAGE
Presenting: the Dafly language!

Aock da aozathblym outh aock, hada aozathblym ha aock da.
Outhaozdyd aoz daflyhyth da hada: "da fly."
Aockdydda aoz hada aoz da outhaockblymda daduehaochdeth.
Da aock outhdaothflamlao aockathhythdyck da hada aoz da.
Aoz aockdychda da daha da hadyth hoohada douda, ha doudyd daha daodou aozaockath, aoz aock aoz da daodou aockflath...
Aock athdaothaoz hada outhdaoth da, oozouz outh daha da daduehaochdeth, da hadyd da hada outhdaoth outhdych outh - da aoz daduehaochdeth outhdaothflamlao da ouzaozaockouth.
Da hada outh da aoz?
Da aock ha da athblymflath aockathblymha.
Dablymdethdou ha aock outhdaoth da, dadaofly da outhaoz da daduehaochdeth outh; outhaoz da aock ha hadueflath aockdyck.
Aockathouth aoz aock aoz da outhdych.



GENERATING NEW LANGUAGE
Presenting: the Eiwkrourk language!

Ouzh oorkeiw oazh kroo kroofab bu kra.
Krafi eiwooll krukrafikroo oork ouwurkoazheiw, "kri oazh eiwoazh krafu krafi kri, oazhurk kri krukloork oazh kroofab kra."
Kra oazhoobeiw kroo kri oazh eiw; oork foosturpouw.
Bu kroo boo kralurpkrourkoob kri.
Kra ooll kra eiwooll oorkeiw oazh kru eiwuwkroob - kri krakrifi kroo kri fikloork krakrifi kra: krafu oazhurk krukrafikroo oazh kru oork.
Kru uw kra krafu kroo oorkouw, boo oazh ouw fookrourkfi kroo krakroo, oazh eiwooll oolleiw krakru kra.
Oazhoobeiw oorkouw oork oazh kra oazh.
Kroukrookru kroofab boo oork lufi kroo kra.
Krafi oudeiw krukloork kroo uwouzh kri bu - oolleiw kra oazh kri oazh fookrourkfi kroofab, oazh kru kroo kra oazh; kri kra kroofab kra kroo oazh.
Boo krafi uw bu oazheiwkrooborp oazh kroofab boo, fookrourkfi oazh kri oazh oorkouwkrourk oazh...



GENERATING NEW LANGUAGE
Presenting: the Blowhurt language! (wow rude)

Li liwheilbnyrt qruwhuwhurt orch whufleamlileab uh, who loli uborch fly lo orch, who uh uborch blo ub.
Blo urch eart ub flyblo liwhurtorcheart oablurtliwhoa qru.
Whufleamlileab orch lolarch uheartwhurt eart yng; "whuwhurtqruwhoa tylini niwhurt uborch whufly who lo urch."
Whoa whufly whufleamlileab lo loli.
Whuwho eartub qruwhuwhurt lo yng.
Ubungorcheart flyleab flyblo yng ub yng, orch li yng who orchleabni blo.
Uh ub blo eart ub eartorch lo li.
Flylifleam whu flyleab who uh, li lo yngorch yng flylifleam yng fly: li eart uh whufly uh flywhoa whu.
Flyleab eartong whufly lo whufleamlileab, eartuborch uborch whuliqrufly flyleab uborch: "fly yng."
Flylifleam eartlarch ub fly liwhurtorcheart eartub lo eartong!



GENERATING NEW LANGUAGE
Presenting: the Oulbmyr language!

Aor mueyue oartmuertkao mueyoo mueyooblyyblao uelbaolb mueyue.
Oulbyoulboart oulbaortaolbbluert moa blueblaoyoo yoo kaoblaomablyy uert, kao muemuertour mue yoo sloamue mueyue mueyoo; "oulb kao oartmouv oulbuert uert muemuertour blueblaoyoo aolb."
Oart kao aort mue kao oulb.
Moa yoomyr blue yoo kao uer kao aort, aolb yoosloa mue aolb ma, "uelbaolb moamue oulb oulbmuertslourb mueyue kao oulb, oulbuert oulb aoy mue uer, moayueblyy aolb kao moamue moa."
Yoo moamue mue blaobaomuekao oulb uelbaolb, our kao uert moa aor moayueblyy oulbmuertblouy; uertbluertslourbblyy blueyoomue oulb oulbourblouy aolb aor...
Kao mue uelbaolb moayueblyy moablyy - uertbluertslourbblyy oulbuert uertbluertslourbblyy kao mueyue.
Moa oulbmuertslourb mueyue mueyoo moamue muekaoblao, oulbyoulboart kao moamue yoo kao, oulbmuertslourb yoo aolboulbuert blaomueslourb kao mue, oulbuert moa mueyooblyyblao blue blueyoomue.
Yoo yookaomuemuert uer moa kao oulbmuertblouy aolb kaoblaomablyy.
Moa mue oulb moa yoo.
Oart mue aor kao mue moamue yookaomuemuert, kao yoo blue aor aolb, mue yoo uertblouyboulbmue oartmuertkao oulbaortaolbbluert yooslourb; yoo aolb aolboulbuert moayueblyy oaruert our...



GENERATING NEW LANGUAGE
Presenting: the Swouswilf language!

Swi tiswilf swiswilfgoaph swi gou, irg eark ein ork orkoulf, swi swou ti gao swi gou chicheizhea: "ti!"
Swi gou gaogoalfgoaph gao swigoalf, ti ein gaochi swi chisworkgaochei gao: eark swigaochi eark gou ti orkeark.
Ti ilf ouqork nimailfswou oulfinork swi, nimailfswou ti oulf ti ein swigoalf swi, "orkoulf swigaochi ti swi ilf, chi oulfourchiq ouqork swi cheigaogoalf oulfinork ti - ork earkgaoph ork gou orkourgoalf swi eark..."
Eark gao swi ti orkourgoalf: chisworkgaochei swi.
Ti swi gou swi gou?
Ti gaogoalfgoaph chi eark swi oulftilfchi ilf zheagoswi.
Swi orkmailf ork oulf swi orkoulf orkearkein.
Swi ti orkourgoalf swou orkoulf chisworkgaochei ti, swi eark tiswilf gou oulfourchiq ti ork, irg chigao swi ilfgoalf ork swigaochi swou, "swi gou swi swou ein swi orkoulf, swi gaocheigaoph ti ork gaochiswiswou, orkgaophswi swi eark chigao eark, gaogoalfgoaph oulf oulftilfchi ti swi, orkoulf swi ti swi orkgaophswi chisworkgaochei."
Eark eargmailfork eark chigao eark orkoulf goswi earkgaoph; orkeark orkoulf ouqork eark orkinirgein zheagoswi.
Eark gao ork ti oulf gou swigaochi eark?



GENERATING NEW LANGUAGE
Presenting: the Blunex language! (I really like the languages with X)

Nu ox ux blaoblu ux blu na cha: "blao."
Blao uxaoh blao blubox aox.
Ox blu ux uxaohox ux blubox ux na - naluxmepblu blulux ux nu blublaokra blao - uxaohox ux ang blublaokra ox nu; oax blaoblu blaonex cha blunexney ux.
Aoxunguxaoh nu ux uxaop ux ang.
Blaoblu ux blu blao na ux up; nu ux uxneyblao ux na ox blublaokra.
Blubox blublux bablu blaoluxmep blanex blu up na - blao up cha ux nu blublaokra.
Blanex blu ux ang ox blu?
Uxupbox ox ang up ux blaoblu, uxaoxeng aoxunguxaoh blulux blabaochblao uxaoxeng ox uxneyblao.
Ux nu na ux na blulux ux nu - ux ox ux na nu up.
Ox oax naluxmepblu ox uxox.

Comments