Inflection is a fascinating aspect of language. My native language is 
Portuguese that just like Spanish and French (and I believe all modern Latin 
languages), uses a lot of inflection, for both nouns (declension) and verbs 
(conjugation). Even native speakers, I can tell you, suffer a little in 
school to get all these rules right :) remarkably because some forms are 
archaic, never used in colloquial language.

The curious thing is that, if we accept the common-sense that inflection 
makes language more complex, then we must realize that languages have 
evolved from complex to simple - just the opposite of what you would expect. 
2,500 years ago, Latin used inflection much more heavily than any modern, 
widely-used language.  And 3,500 years ago, Sanskrit was a radically 
inflected language, even more than Latin - up to the point that Sanskrit 
poets had the advantage of being allowed to rearrange the words of a 
sentence in any order they wanted because it would never change the meaning, 
as the role of each word and the relationships between words in a sentence 
are always clear from inflection.

Maybe in human languages, just like programming languages, complexity does 
not result from cultural sophistication - it results from empirical growing 
rather than proper design. Inflection may seem like a clever idea, but it 
boils down to 1) creating specialized variants of each root word for 
different scenarios like time, person and number; and 2) coalescing these 
variants to some regular patterns, so the memorization becomes easier for 
each new group of words. It's a natural process, that we can easily 
visualize working in primitive cultures. (But IANAP - I'm not a 
philologist.)

This remembers me of the proliferation of BASIC dialects in the 80's, 
remarkably in now-classic 8-bit microcomputers: there was no concept of 
libraries/APIs and no mechanism for extensibility, so the full power of the 
programming environment was in the language's set of built-in functions 
(primitive keywords). I remember reading articles that compared competing 
BASICs and picked the "best" based in the richest set of built-in functions 
for string manipulation, maths, graphics or I/O.  In contrast, you have 
languages that have a proper design, like Lisp or Smalltalk as the canonical 
examples, which number of primitive operations or keywords can be counted in 
your fingers, but the language is still much more powerful than others 
because their primitive core is entirely optimized for composition. And even 
after decades of the evolution of our programmer's culture, these "simple" 
languages, along with the paradigm they espouse (metaprogramming, 
functional-purism etc.), are still making slow progress towards adoption, 
mostly via influencing "pragmatic" languages that, each 10 years, make 
another baby step towards 1959... 

A+
Osvaldo

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/javaposse/-/ce5e3x0n6TcJ.
To post to this group, send email to javaposse@googlegroups.com.
To unsubscribe from this group, send email to 
javaposse+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to