Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: The Germanic language form

by w-ber (Hermit)
on Jun 01, 2007 at 13:12 UTC ( #618735=note: print w/ replies, xml ) Need Help??


in reply to The Germanic language form

Well, being a native speaker of Finnish, I think I can speculate a bit. I'm sorry for the upcoming confusing explanation, but I know only basics of linguistics.

Apart from mostly free word order, I think the biggest difference of practical significance between Finnish and English is word flexion. In English, you indicate by use of prepositions (and sometimes postpositions) location, relation, preference, and other similar concepts for nouns. For instance, one might say (the classical example) "I live in a house" or "A lion ate me".

In Finnish, you flex the nouns, the pronouns, the adjectives, and the verbs, so our examples become asun talossa (or minä asun talossa) and leijona söi minut. In the former, the basic or root form of house, talo is flexed with the -ssa suffix to indicate that something is in something else. Minä, which means I, is flexed as in English, indicating that "I" was the target of the action of eating. The root form of the verb asua, to live, is also flexed according to the pronoun. As in Spanish, you can optionally leave out "I", as it is already visible from the verb who the subject of the sentence is. Also notable is that there are no definite and indefinite articles in Finnish, but those are understood from context.

By the way, as in English, there are no grammatical genders, and in fact, we even have only one pronoun for third person singular: hän. Talk about gender equality.

There are fourteen noun cases in Finnish, corresponding to such English prepositions as in, inside, out, outside, of, for, with, by, and between, to name a few. The rules for flexing nouns are a tad complex for non-natives, because not only are there many exceptions (or rather several very different rulesets), you also have to obey so-called vowel harmony.

Vowel harmony means that a single word must have either frontal vowels (y, ä, ö, y and ö the same as in German) or back vowels (a, o, u, roughly the same as in Latin). Both sets can be mixed with neutral vowels (e, i), but not with each other. This means that there are, in fact, two versions of each noun case, one for frontal vowels and one for back vowels. Our example case, -ssa would be -ssä for words such as äiti, mother. (Imagine the English sentence "there is something good in mother" and äidissä on jotain hyvää.) Talking about vowels, we also have a dozen or so diphthongs.

Back to word flexion, pronouns may assume the same cases as nouns. I can say minussa, "in me" or "inside me", or hänessä, "in him/her" or "inside him/her". (Note again vowel harmony.)

Adjectives and verbs flex as well, but a bit differently. Since this is already a long reply, I'll skip most, but in our example, the word söi is the past tense of the root verb, syödä, to eat, flexed according to third person singular. If it were a group of lions, we would use söivät to indicate plurality (and the present (progressive) tense would be syövät, "eat" or "are eating", but you don't want to think about that).

Naturally, there is also a grammatical group for non-flexing words, i.e. adverbs. There are some that can be used as pre- or postpositions akin to English.

One example more before actual speculation: word order is relatively free, but it does carry some significance, namely making nuances. In English, you can say "A lion ate me" to stress that it was a lion that ate, or you can say "I was eaten by a lion" with a passive agent to stress that it was you who was eaten. In Finnish, we don't need to change the grammatical structure of the sentence. The first case is leijona söi minut and the second is minut söi leijona. You can permute the three words in any order and you get a different nuance of the same event.

I have never studied Latin, but as I understand it and from reading Lingua::Romana::Perligata manual, Latin has completely free word order, and it has even stronger word flexion than Finnish. So, to see what Finnish-influenced programming could possibly look like, check that excellently funny module.

However, some speculation by me is in order. A Finnish-influenced programming language would have very few prepositions and postpositions and would instead either have an elaborate variable name flexion system to indicate relationship between data, or it would write graphemes in place of prepositions, such as arrows or some other abstract symbols.

Germanic languages have one very good quality: they are modular, for lack of a better word. You can take out a noun and replace it with something else without affecting anything else in the sentence, i.e. without any changes in flexion in other words. You can't do that in Finnish in general. One related example is flexing ordinals. Say you want to say "twenty first": kahdeskymmenesensimmäinen. That's two words: kahdeskymmenes "twentieth" and ensimmäinen "first", and the cardinals for those are kaksikymmentä "twenty" (literally two tens) and yksi "one". If you want to say "in the twenty first chapter", it turns out you need to flex each component in turn: kahdennessakymmenennessäensimmäisessä luvussa. Naturally, you don't often do this in speech nowadays, but use the English system. It's vulgar, but oh so much more convenient.

So, in our hypothetical language, variable assignment is already a challenge. In Perl 5:

my $var = value; my @array = (values);

If you want to strictly adhere to Finnish grammar, we would have something like (taking into account that "variable" is muuttuja, "value" is arvo, pl. arvot, and "array" is taulukko):

aseta var-muuttujaan arvo value. aseta array-taulukkoon arvot (values).

Here, aseta means "set", as that's what the equals symbol really does. var-muuttujaan means "into the variable var", and the same for array-taulukkoon. Given somewhat free word order, the lines above are equivalent to:

# For variable assignment: aseta arvo value muuttujaan var. aseta arvo value var-muuttujaan. aseta muuttujaan var arvo value. # For list assignment: aseta arvot (values) taulukkoon array. aseta arvot (values) array-taulukkoon. aseta taulukkoon array arvot (values).

I can see a similar pattern as in Lingua::Romana::Perligata forming. However, this is already too long a reply.

It's curious to note, by the way, that even modern mathematical notation is heavily influenced by Germanic languages. It's hard to come up with examples, but you instinctively notice it if you are not a native speaker of a similar language.

UPDATE: If you want to do the same as in Perligata, i.e. flex the variable name (instead of the hack above), it becomes more complicated. Variable name muuttuja would flex to muuttujaan, but variable name var would flex to variin, if we try to transcribe the meaning "set var to value". If you wish to use the verb "to be" as in Perligata example:

# my $muuttuja = value; muuttujan arvo on value. # my $var = value; varin arvo on value. # Alternative word order: value on muuttujan arvo.

This is because var ends with a consonant, not a vowel, and thus an extra vowel needs to be appended. The parser would need to take this into account; i.e. it would have to be able to deduce the root name from the flexed variable name, and that's not trivial at all.

--
print "Just Another Perl Adept\n";


Comment on Re: The Germanic language form
Select or Download Code
Re^2: The Germanic language form
by girarde (Friar) on Jun 01, 2007 at 13:28 UTC
    Fascinating. My niece is a linguist with no programming bent but I'm going to point her at this anyway.

    You're righ about prepositions in English. They really are what make it work. Latin, on the other hand, is so strongly flexed that it practically doesn't use articles. Between case, declension, mood etc. you always know which is which.

    Is it true that Finnish is related more closely to Turkish than any other language?

      As if this thread weren't almost entirely off topic already.... You should be hesitant to ask an encyclopedia question.

        A native probably has something more, and more amusing, to say than Wiki.

        Conceivably he could correct it. :-)

      Latin, on the other hand, is so strongly flexed that it practically doesn't use articles.

      For completeness: s/practically//;

        I'm not really a Latinist, but I do recall a book titled "Winnie ille Pooh" by Milne.

        Anyway, I usually prefer to make weak assertions.

Re^2: The Germanic language form
by Pic (Scribe) on Jun 01, 2007 at 14:03 UTC

    Being a programmer and Latinist, I have to make some comments on your understanding of Latin from L::R::P.

    Latin only has six cases: nominative, vocative, accusative, genitive, dative and ablative. The uses being somewhat similar to some of the Finnish cases (according to Wikipedia at least), so Finnish is rather more inflected than Latin actually.

    On word order, your're quite right. Word order is very free as long as the words stay within the clause (part-sentence) it belongs in. But in some authors like Tacitus (who I had the [mis?]fortune of encountering this semester), word order is even more free, such that words are occasionally placed such that it appears outside of the clause it belongs in.

    All in all, Latin is a quite interesting language, although it requires effort and dedication to master. Not entirely unlike Perl, come to think of it. =)

      Latin only has six cases: nominative, vocative, accusative, genitive, dative and ablative.

      And locative, though its use is quite restricted in so called "classical" latin.

      On word order, your're quite right. Word order is very free as long as the words stay within the clause (part-sentence) it belongs in. But in some authors like Tacitus (who I had the mis?fortune of encountering this semester), word order is even more free, such that words are occasionally placed such that it appears outside of the clause it belongs in.

      I personnally had greater difficulty understanding Virgil... Damned Georgics! but Cesar is the easiest.

Re^2: The Germanic language form
by aku (Monk) on Jun 01, 2007 at 18:45 UTC
    ++ for your great post w-ber! As another finn I just need to nitpick a little on your last examples.
    # my $muuttaja = value; # You say: muuttujan arvo on value. # which in my opinion means more like: $muuttuja eq value; # I would change that to muuttujaan value. # Meaning: value to muuttuja. # Or maybe muuttujan arvoksi value. # Meaning: value to muuttuja's value. # Or more verbal: aseta muuttujan arvoksi value.
    We'll there more than one way to say it in finnish too ;) Sorry for post that probably has very little to give to non finnish readers. My first post here anyway.
Re^2: The Germanic language form
by raptur (Acolyte) on Jun 02, 2007 at 02:12 UTC
    Just a real quick note on word order freedom. I'm going to shy away from absolutes when it comes to languages, but typically even in languages considered "free", word order is fairly restricted. Consider, for instance, that a seven word sentence has 7! = 5,040 possible permutations, yet even in languages with the freest word order a small fraction of these will be semantically equivalent. Moreover, there will usually be pragmatic distinctions within these semantically equivalent sentences.
      You are quite right. Just remember that the sentences tend to have less words in these languages like finnish. Flexation cut's down the prepositions and articles. Words just happen to get longer at the same time. (36 words, english version)

      Olet melko oikeassa. Muistathan, että lauseissa on tavanomaisesti vähemmän sanoja näissä kielissä kuten suomessa. Taivutus poistaa prepositioita ja artikkeleita, Sanoista vain sattuu tulemaan pidempiä samanaikaisesti. (25 words, the same in finnish)

      # Sorry only 6 words to start with I would like to learn Perl. # Same in finnish 3-4 words (Minä) haluasin oppia Perliä.
      => All six combinations of the shorter form have the same semantics although this one is the most natural. With the "I" Minä included some of the 24 possible word combinations are quite awkward, but still understandable. If nothing else, they would likely reveal that you're not a native writer/speaker.
Re^2: The Germanic language form
by Jenda (Abbot) on Jun 03, 2007 at 00:11 UTC

    Oh my! And I thought Czech was crazy. Though ... actually ... quite a few of the things you said about Finish could be said about Czech (and other slavic languages as far as I know) as well. We flex the nouns, the pronouns, the adjectives, the numerals (they are considered separate from nouns as they are flexed differently) and the verbs by means of suffixes, we do not use articles, we allow sentences missing subject, there are fourteen noun cases in Czech (though I bet the usage doesn't match), the word order is relatively free.

    The "kahdeskymmenesensimmäinen" scares the heck out of me though. It's awfully long. Especially since the parts get all joined together. We don't do that in Czech. "Twenty" is "dvacet", "one" is "jedna" (or "jeden" or "jedno", Czech does have genders), "twenty one" is "dvacet jedna". We likewise to have to change all the parts when going between ordinals and cardinals ("dvacátý první"). And we do flex the numerals, "in the twenty first chapter" would be "ve dvacáté první kapitole". We still do this though, no English-like simplification. Tenses are something I would rather not go into. I don't think I could explain that even if I tried.

    It's strange that it seems Czech and other Slavic languages have more in common with Finish than with English even though the official language evolution trees say something else. I guess it's because languages are fairly promiscuous and mix and match like mad.

      My computational linguistics professor last quarter said that czech has nearly 10,000 parts of speech when you sit down and really try to work things out. Ca-razay!
      It's strange that it seems Czech and other Slavic languages have more in common with Finish than with English even though the official language evolution trees say something else. I guess it's because languages are fairly promiscuous and mix and match like mad.

      In addition to this, you know that a seagull and a mosquito both have wings and fly while they're nearer from the evolutionary pov to us and to a Horseshoe crab respectively, don't you? Speaking of programming languages, in a another post of mine in this very thread I mentioned a question I had asked in p6l: it was "an out of curiosity one" the content of which seems now relevant to the point you raised as an example. Here it is:

      And the answer was: no!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://618735]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (3)
As of 2014-10-01 23:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    What is your favourite meta-syntactic variable name?














    Results (41 votes), past polls