Tuesday, 30 October 2012

Khangaþyagon on the Conlangery Podcast

Conlangery #73: Khangaþyagon Conlangery Podcast The Conlangery Podcast has just released an episode featuring Khangaþyagon. Unfortunately, timezones meant that I couldn't contribute in person, but George, Mike and David seemed to enjoy talking about my language, even if towards the beginning they went off at more tangents than Tristram Shandy. Mike, in particular, seemed to have enjoyed diving into the depths of the grammar to fish up interesting things to talk about. As Khangaþyagon is a magical language, Harry Potter was inevitably mentioned, which is ironic as dissatisfaction with JK Rowling's "Point your wand and shout Canis Latinitas" magic system was part of the reason I created Khangaþyagon in the first place. There was some amusement that my phonology section specifically points out that there is no schwa. I wrote that bit quite early on. Since I'd based Khangaþyagon's phonology on familiar Germanic models, I thought that might lead people to expect vowel reduction. This brings up my favourite quote from the episode. "Pronounce it like you're really looking forward to chomping down on that apple." Mike noted that 2 dipthongs, æ and œ, are written with ligatures, and David correctly surmized that I would have written them all that way had it been possible. They're all written with ligatures in the Bukhstav. On the subject of the Bukhstav, David's Bukhstav font can be seen in action here and here. mœzawana shuþa ya Davidye. George mentioned that the URL for Khangaþyagon was hard to type, as it had a non-ascii character in it. Surely everyone knows that þ encodes as %7E? What, only people as geeky as me? OK, I've made a redirect. George was interested in the fact that while Khangaþyagon numbers are base 10, multiples of 12 are counted as dozens. This is because 12 has important magical symbolism, and so merits special treatment. I got a bit of kudos for consistently referring to affixes as "segunakar". Anyone who knows David can imagine how pleased I was when he said "They're not morphemes." Khangaþyagon has a very regular, agglutinating morphology, so it's nice to feel that I've avoided some of the potential pitfalls of that. On the subject of affixes, I wonder what the three prefixes the team claim to have discovered are? One of Khangaþyagon's more unusual features, adverbs agreeing with verbs, attracted attention. The team wondered if it would be possible to drop the verb and use the adverb as a verb. That's a brilliant idea, I wish I'd thought of it. If it happened in a descendent, it might lead to the segunak wan being reanalysed as a verb meaning "do something in a given manner." The word yagaazh does have a vowel hiatus in it. That's something that I can imagine changing in descendents. I'll end with the thing that surprised me most about the episode. David, George and Mike managed to talk about Khangaþyagon for an hour without mentioning its noun system. I don't think I could manage that.

Thursday, 18 October 2012

Khangaþyagon documentation updated

Khangaþyagon - FrathWiki
When I first started to publish Khangaþyagon's grammar, I did so in a series of blog posts on the now defunct artlangs.com site. I eventually ported this material over to FrathWiki, and later added a dictionary. However, for one reason or another, I recently decided that the documentation needed a proper revision, and I've just completed that.

I've incorporated some of the insights I've got from other conlangers over the years. I've put in lots of new examples - the morphology section now has examples for every segunak, and an interesting sample of combinations. I've cross referenced the sections, so that you can see how morphology and syntax relate to each other. I've put more depth into things I'd glossed over, added some things that I'd always known but never mentioned, and even made some new discoveries. Please take a look and feel free to leave comments on the talk page.

As a final note, my top tip for documenting your conlang is to do it breadth first. I won't name names, because there are too many, but a lot of conlangers try to document everything in depth from the outset, and never finish. If you've got all the basics covered, it's a lot easier to come back and add the details. This update took me a lot less time than I thought it would.

Thursday, 9 August 2012

Khangaþyagon feedback

I'm always keen to hear what other conlangers think of Khangaþyagon, so after relays I ask the person who's followed me for feedback, and put it here...

Talk:Khangaþyagon - FrathWiki

The latest contributor is Doug Ball, creator of Skerre, who followed me in Relay 19. We ended up having quite an interesting discussion about various grammatical ideas and my creative process.

Take a look, and feel free to add your own comments.

Wednesday, 1 August 2012

Khangaþyagon phonotactics

When creating vocab for Khangaþyagon, I prefer to hand craft my words, to get the right sound for the right meaning. I've always been more interested in internalising the phonaesthetics of the language than rigorously defining the phonotactics. However, I thought I ought to have a go at investigating just what syllable structures are possible.

Khangaþyagon Phonotactics - FrathWiki

I'm particularly proud of the syllabification rules, which help to mitigate the somewhat naive first conlang regularity of Khangaþyagon.

Saturday, 28 July 2012

Custom sorting for conlangs

Sorting a list of words into alphabetical order is usually a trivially easy task. But if your words are in a conlang, alphabetical order might be different from usual. Here's a Python class that, when instantiated with a list of strings (alphabet), creates a callable object that can be used as the cmp argument of Python's list.sort() method. alphabet can contain digraphs, in which case matching is greedy, and the CustomSorter will ignore any characters not found in alphabet, which is useful for separating pairs of characters that might otherwise resemble digraphs. If you're using Python 3, you'll have to wrap the CustomSorter in comp_to_key. (Hope preformatted text works)
class CustomSorter(object):
    def __init__(self,alphabet):
        self.alphabet=alphabet

    def __call__(self,word1,word2):
        comp=0
        if word1=='' and word2=='':
            comp=0
        elif word1=='':
            comp=-1
        elif word2=='':
            comp=1
        else:
            head1,tail1=self.separate(word1)
            head2,tail2=self.separate(word2)
            if head1==head2:
                comp=self(tail1,tail2)
            else:
                comp=self.alphabet.index(head1)-self.alphabet.index(head2)
        return comp

    def separate(self,word):
        candidates=self.Candidates(word)
        while candidates==[]:
            word=word[1:]
            candidates=self.candidates(word)
        candidates.sort(key=len)
        head=candidates.pop()
        tail=word[len(head):]
        return head,tail

        def Candidates(self,word):
            return [letter for letter in self.alphabet if word.startswith(letter)]

Thursday, 21 June 2012

Some Original Reasons for Invading Earth

In some SF shows, it seems that Earth can scarcely get through a week without being invaded by aliens. The trouble is, the aliens are running out of reasons to invade. All the usual ones, enslaving the population, plundering the planet's mineral wealth, fleeing your doomed homeworld, converting the planet into a weapon of cosmic destruction, they've all been done. I'd like to suggest some alternatives for interplanetary despots in search of new reasons to invade.

Bragging rights

The guys back at home will be so jealous when they hear that we conquered Earth.

Turning the planet into a tourist resort

Beautiful scenery, fascinating cultures: Buy a SpaceTimeshare ® on Earth today!

Conceptual Art

This Happening challenges us to explore such themes as: What does it mean to be an alien? and Why do we really invade planets?

Dragées Those little silver coated sugar balls

used for decorating cakes. According to The Doctor, you can only get them on Earth. Have you any idea the price they fetch in Andromeda?

Wednesday, 9 May 2012

Parts of Speech in the Voynich Manuscript

As previously mentioned, I've been trying to do some analysis on The Voynich Manuscript. There are three basic schools of thought about what the language in the manuscript might be-
  1. A cipher for some natural language
  2. A conlang
  3. Gibberish
As a conlanger myself, I tend towards the second hypothesis. If that's correct, the key to understanding it will lie in working out what the grammar of that language is. As a first stage, I've been trying to cluster words according to the environments in which they occur. The idea is that words that occur in similar environments are likely to have similar grammatical roles. Suppose we have a sequence of words A X B, then the tuple (A,B) can be considered the environment of X. However, since there are a lot of different possible environments, that would produce a very low signal to noise ratio. Therefore, for each environment, I found the set of words that could occur in that environment, and compared those sets between pairs of environments using the Tanimoto metric. I clustered the environments using a nearest neighbour approach (each environment belonged to the same cluster as its nearest neighbour). For each distinct word in the text, I then calculated the probability of it occurring in any environment found in each of the clusters described above. Comparing vectors of these probabilities with a Pearson metric, I performed nearest neighbour clustering. This initially produced 92 clusters, so I created a sequence of cluster memberships for each word in the text, performed clustering on that, and then merged clusters accordingly. I repeated this until no further reduction in the number of clusters was possible. I ended up with five clusters, about the right number to represent parts of speech. My results can be seen here (I do need to fix the formatting, though). A quick statistical summary is
ClusterNumber of wordsNumber of instances
0429115790
114707040
27473460
33792270
4442012142
But what to these categories mean? How do they relate to each other? That will be the subject of my next experiment.