Extinction Of Human Languages Affects Programming?
Tanmay Kudyadi writes "An article from NewScientist.com reports that half of all human languages will have disappeared by the end of the century, as smaller societies are assimilated into national and global cultures. This may be great news if one is looking at a common standard for communication, but it dosen't help those designing the next generation of programming languages. For example, there's an extremely strong link between Panini's Grammar and computer science (PDF link), and with every language lost, there is a possibility that we may have missed an opportunity at improving the underlying heuristics."
Human languages dying may be a pity (or not), but it does not have anything to do with computer programming.
Programming can be fun again. Film at 11.
and coming from Europe, when I went to East LA nobody was speaking English...
It will become even more of a Lingua Franca, sure but Primary for everybody, I don't think so. Peoples' pride in their own cultures would not allow it...
- - Sha la la la . . .
There are over 1 billion native speakers of either Cantonese or Mandarin. English might be spoken by a billion people, but it's unlikely that it's a first language of that many people. Just a thought.
"with every language lost, there is a possibility that we may have missed an opportunity at improving the underlying heuristics."
That sounds plausible to me. However, isn't part of a programming language the ease with which we can use it? If no one could natively use a language or grasp it easily, then comprehending these wonderful heuristics would be extremely difficult. High level programming languages exist for a reason. That's why few people program in assembly--it's difficult to learn. No one grew up speaking assembly, but many people grew up speaking Romance and Teutonic languages. If programming languages were suddenly structured like, for example, Arabic or Chinese, I would likely find it extremely difficult to learn and use them. (Note that I can speak Chinese but can hardly imagine trying to program in it.)
Which is ridiculous.
Here's the great truth - the Net has done more in 10 years to advance English as the dominant language than 500 years of foreign occupations did by the British. And, as the article mentions, English and Spanish are incorporating idiomatic elements of other languages as slang and new vocabulary.
The 2nd truth, languages like C and perl and visual basic have constructs based in English (for...foreach...if/then, print, exit, need I go on..) and understanding these key words also helps push English as the dominant language.
One can debate the merits of this, but I disagree with the slashdot premise that it cuts off avenues of finding better heuristics, because any attempt at a dominant language will and must evolve, even if it were the sole language of the entire planet.
This article is just confusion. Somehow the loss of obscure human languages effects programming? In what way? Neither article links makes any mention of such a thing.
In fact, the very fact that a universal human semantic language seems to exist implies that the loss of specific languages doesn't make any difference.
Also, human languages and programming languages are very different. Programming languages that actually work are designed with BNF syntax, a very structured formal style that can't begin to describe human language; human language is organic and has no destinct syntax (its statistical only).
Thus, the thesis of the article 1) isnt supported in the links and 2) doesnt make sense.
This is sort of misleading. A better way to say it might be that half of all languages we know exist in the current day may be extinct in 100 years. All the languages that we know today probably constitute a tiny fraction of all human languages, since languages continuously are created, evolve, merge, die out, etc.
The differences could come in syntax. Imagine if there were a language out there which had a natural syntax structure that was ideal for AI or patern recognition programs.
I think linguistic and Computer science could, and some would argue should, be much more intertwined.
A blog about stuff.
They're not based on english, really:
for (etude=1; etude GRANDE_FRAB; etude++)
{
va_sub(etude, FRIES);
}
is valid. Keywords are just keywords, and if you really wanted to you could use macros to replace them with arbitrary words in your language of choice.
It's more accurate to say that programming languages are linear (or tend to be), because that's how computers work today. What a non-linear language would be is unclear - for the same reasons an OODL is unclear until you find problems where it's ideal.
And to correct you, the computer does not "care" about anything. Zeroes and ones are what a processor interprets in order to execute an instruction but there's no reason you could not move to a 0,1 and 2 numbering system. Maybe the introduction to computer science class that you're taking hasn't covered this idea yet.
Language design benefits from having many different languages to examine. That's what this article is about. Take your binary elsewhere.
I hate liberals. If you are a liberal, do not reply.
You're not studying very well then:
There are hard and fast rule's to a word's meaning, the kanji associated with it. Because Japanese uses a sound system based on (in English) what are two syallables (a i e o u, ka ki ka ko ku) in English becomes one in Japanese (some Arabic sounds are the same and I'm sure it's the same for most other langauges - a sound considered "one" in their language is differnent sounds mixed together in ours) there are a lot of homophones in Japanese. However, the kanji always points to the correct meaning.
Words don't have different spellings. A word can be written in hiragana (phonetically) or in a combination of kanji and kana, and that's it. Words don't change spellings, because they have either their kanji or the phonetic spelling, which doesn't change.
You are right that a words meaning can be based on context - but take the phonetic word hashi for example; which can mean edge, bridge, or chopsticks - you'd be in bizarre circumstances to not understand which one is being referred to. In fact a lot of Japanese humor comes from the fact that there are so many homophones and they can so easily be punned.
You're thinking about Japanese entirely the wrong way: it's not that ONE WORD has many different meanings, it's that many words sound the same. It seems like a little thing, but that's a fundamental concept. You'll never speak a foreign language like a native if you continue to think in English terms like that.
I find Japanese to be an elegant mix of Chinese characters and a phonetic alphabet that combines the beauty and inherent simplicity of characters (if you grow up with them) and the flexibility and amalgamative qualities of a phonetic or alphabet based system. It's less unwieldy than Chinese in incoporating new words but it has the same beauty as Chinese or Arabic (which is phonetic, but Arabs put a lot of stock in calligraphy, as do the Chinese and Japanese).
"There is no time, sir, at which ties do not matter," Jeeves, (Jeeves and the Impending Doom)
People who speak different languages, *think differently*.
Tables and chairs have gender? WTF? Yes they do in other languages. Reverse Polish Notation, is that backwards or what? But you get the picture, people from different cultures and especially languages think differently, different algorithms and structures come more naturally.
It isn't just programming languages which will lose out when English takes over the world, it's much more fundamental than that, some thoughts, concepts will be easier, some will be harder, maybe even impossible to formulate simply because of the language.
Government of the people, by corporate executives, for corporate profits.
For those do not know, Panini is the author of the Sanskrit grammar. I don't quite figure why the article was linked here in this context. Sanskrit was dead for a couple of millennia, but it's not like it was lost. And it's not like if Sanskrit had not been dead, we would have had a much better computer language today.
One irony is that Paninikilled the Sanskrit language. He effectively made the language rigid by describing the grammatical rules so beautifully in about 4,000 sutras. If one does not compose a Sanskrit sentence following the rules prescribed in the Astadhyayi (Panini's sutras), it was not sanskrtam (purified). Thus the language became something that keeps changing, or something that has to be learned while growing up. It officially got the status of a dead language, not that it's bad.
On the other hand, think about this: modern linguistics started after the discovery of Sanskrit, including Panini's grammar. It actually helped forming many linguistic concepts. Modern linguists helped forming computer languages. Is it a surprise that there are many things in common?
One of my teachers, who happens to be the leading scholar in the field of Sanskrit grammar, always emphasized us that one of the big misconception about the grammar of Panini is that it dictates how to compose a Sanskrit sentence. He said, it is more of a tool to analyze grammatically correct sentence. It does not know syntax. It would appear that, say, a past participle stem from the root pac- may have derived by going through several Paninian rules, but the matter of fact was that there was the form pakta long before the grammar was formed.
Those mechanisms working in Panini's grammar is amazing and the logic behind it seems indeed like computer language. Still, an article like the one linked here is not much different from trying to find something that was not originally intended to show the supremacy of one civilization. Even the commentators of the grammar emphasize that the grammar is not the first but the speech was the first.
So, stop moaning about the death of Sanskrit as a language. A techie should be grateful that it was dead as a language, but frozen and kept. No wonder India can produce so many good programmars. For some, programming is something similar to what they have been doing for a couple of thousand years. By the way, I'm not an Indian or a programmar.
According to the author of 'The Difference Engine' this is a major overstatement. Ada was certainly familliar with some of the capabilities of the machine but since it was never built during her lifetime it would be an exageration to call her a programmer.
All of Babbage's machines were described in a high level algebraic notation, but there was no attempt to use anything that resembled a human language. That did not come until FORTRAN.
The initial premise of this thread, that human languages are the best model for computer languages has been considered false by most people working in language design for at least 20 years.
The only notable connection between linguistics and program language design was in the mid 70s when Chomsky's theory of grammars became fashionable. The idea that computer science benefits from knowledge of human languages kinda fails when you find out that Chomsky only speaks English.
Using LR(1) grammars for program languages is not a great idea. They give you lots of power - far too much. The power of XML comes from having an ultra-simplistic grammar that can be easily coded through recursive descent.
Human language has far too much ambiguity to be useful as a model for computer languages. And computer languages that were designed arround the power of yacc were rarely very successful. The trend has actually been the reverse, languages such as Java and C# are considered superior because they have dropped the idiosyncratic features that became fashionable in the 70s.
The news that half the worlds languages are scheduled for 'end of life' by the end of the century is disappointing, I would hope we could reach at least 80%.
Take Welsh for example. Once on its way to extinction. Then folk start saying that its their heritage, must be preserved and such. Then folk start saying that the kids should be forced to learn Welsh in schools. Then folk start burning down the houses of people who speak English.
The problem with liberalism taken to extremes. is that you end up having to defend the right of others to be intollerant. I don't mind people speaking another language, its when folk start trying to impose their cultural values through the law that I object.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
To be blunt: No they don't.
Language does influence thought, simply because people will try to understand something in a way that makes sense from the perspective of their language... But the language won't fundamentally limit their thoughts. I'm sure you can think of times when you had an idea or an emotion that you lacked words for; if the claim in your post was true, you would not be capable of such thoughts.
Do you really, truly believe that somebody can be colorblind just because they don't have color words more specific than "dark" and "light?"
Language makes for a convenient labeling system, but it doesn't define your thoughts. Now somebody mod up the siblings to this post so that their useful content can be read as conveniently as the parent.....
Tables and chairs may be assigned grammatical bins, and these bins can be the same as those assigned to human genders (cf: "Women, Fire, and Dangerous Things", George Lakoff), but it does not mean that French people actually think that a table has anything conceptually in common with a woman, besides the pronoun used to replace it/her. (Or a man, I can't remember my French.)
There is something important lost when the speakers of a language die, yes. But what is lost is not any concept, pattern of thought, or way of looking at the world. Because there is no concept that you cannot translate across the language barrier. There is a word in Russian, I've heard, for that feeling you get when your ex walks into the room. But just because there is no word for it in English doesn't mean that I couldn't just explain it to you. Just because some Native American languages do not have the same adverbs for time that English does doesn't mean that speakers of those languages have no concept of time.
That line of logic was presented by a linguist named Benjamin Whorf in the first half of the 20th century, and has been discredited by all modern serious linguists.
There is a "mentalese" that precedes and is fundamental to language. Babies have it. Animals have it to varying degrees. It's, yknow, nice for English speakers to presume that the exotic qualities of other languages means that their speakers have equally exotic mental structures. But they think, by and large, exactly the same as "us".
Intelligent Design: because MATH is HARD.
It's one thing to see languages die in countries where ceratin languages are forbidden, but in free nations where anyone can speak any language they want, it is irresponsible for an ethnic group to let the language and any other customs die. Watch "Whale Rider" for a modern tale of the New Zealand Maori trying to preserve their heritage. When a people lets their native customs die in favor of another set of customs, those customs really died a longer time ago than they suspect. Only resuming a strong identity is going to salvage the culture.
It all comes down to taking the time for the things that really matter in life. If a people cherish the Internet and pagers and other modern things more than the things of old then they have made a choice (concious or unconcious) to let the old ways slip into the eternal night. That is why I like to see locale options available for open source projects; the more that these are encouraged, the more lanaguages that can be saved. Countries like China that are taking an aggressive stance against Microsoft and Western commercial software are not just trying to keep from paying licenses, but also saving their culture from becoming english-saturated. If they also push locale options, then there will be plenty of rugged alternatives soon. Without alternate language construction examples, computing languages will likewise mainstream into similar styles.
Don't get me started about immigrants dumping their own native names for "Tony", "George" and the like when they come into the U.S. A name like "Panseur" (made it up) is just as valid a name.
"Beware of he who would deny you access to information, for in his heart, he dreams himself your master."
While I'd agree that major differences in language do not imply major differences in thinking, I would still assert that there are very subtle parts of language that directly affect how you allow yourself to analyse abstract concepts.
For example, one language (Chinese) does not really easily allow you to talk to another person unless you know their status in relation to yours (social superior, social inferior, social equal). Because of that, the first thing you need to think about regarding another person before you go on to other thoughts is their status in relation to yours. Now take another language, English, where it is very difficult to talk about a person unless you know whether they are a man or a woman. Therefore, to facilitate matters, you are always in the habit of clarifying if someone is a man or a woman if it unclear, even if it is technically irrelevant for your purposes. In Chinese, this presents no problem as long as you know their status.
A lot of this happens so subconsciously and quickly that it's difficult to really gauge that it happens at all. However, I'd be willing to bet that if you asked English speakers and Chinese speakers if they knew of people, but did not know their gender (and perhaps the number of people who have that status), I would expect English speakers would have a lower "Yes" response.
Language doesn't affect overall thinking processes, but it subtly affects priorities, qualitative factors, and categorization. In other words, two intelligent people with two different languages would reach the same conclusions (about objective matters), but they could use different means to reach those conclusions. Learning another language can make you aware of the limitations of your language, and minimize the effects of those limitations. But there are plenty of people who speak only one language.
Agreed - but for the sake of the readers who have no experience with other Human languages, I will offer the following:
If you know an object-oriented language like C++ or Java, try learning Prolog. Then see if you don't suddenly find yourself writing programs differently, and integrating pattern-matching concepts differently in your programs.
It all translates (eventually) to Assembly, so there should be nothing Prolog can do that C++ can't do. And you still contain the same brain, and the same knowledge of Computer Science, and you don't think only in C++, so there shouldn't be a difference there either. But there is.