Back in the '80s, at the University of Buenos Aires the first intro to algorithms course was taught using the Spanish-based TIMBA language. It was a kind of Pascal/ pseudocode language that we used to program an imaginary one-armed robot to perform some tasks on a deck of cards. We would write a program for sorting the cards by number, or pick all cards with the number 2, things like that. I think it was a good idea for those of us not familiar with either computers or the English language.
The language didn't have a running implementation that I know of; it was all paper-based.
("Timba" means "gambling" in Argentinian slang -- for some reason writing TIMBA programs always reminded me of the late Rene Lavand, the one-armed Argentinian magician.)
I don't know if Microsoft still does it, but in the 90s they actually translated VBA in the Office pack to the local languages... I know it was included in the version before Office 95, but it may have been included in the 95 version as well.
I still have nightmares of the horrors of programming Excel 5.0 using the localized basic dialect. There's something fundamentally wrong about a non-English basic
I suppose it's only right they focused on HUMAN languages, otherwise you'd see machine language up there. Most forms of assembly have always felt like a different language to me ...
Someone needs to invent "gibberish" or "crazy cat lady". What kinds of humorous programming languages are there? The only one I can think of off the top of my head is INTERCAL
Whitespace, Shakespeare, LOLCode, Homespring (the Salmon-oriented programming language), and of course, Visual Basic.
Edit: the "Visual Basic" was my attempt at a joke, but then I googled in "Invisible Basic", thinking that some crafty hacker out for a laugh would have made such a thing. Unfortunately, I don't think this
http://invisiblebasic.sourceforge.net/ is a joke.
IIRC, Microsoft used to release localized versions of their IDEs (not the compilers themselves), but they weren't very popular as most people outside English-speaking countries perceived them to be somehow substandard. I believe they were also shipped after the English versions, so early adopters were forced into the 'merican way.
They don't seem to distinguish between the language itself and the API. I'd think for many languages the core keywords wouldn't be too hard to translate... Translating the .NET API would be a bigger call (there seem to be examples of this there).
Yeah, just translating keywords doesn't make language very different.
But languages such as Nadeshiko (なでしこ) http://nadesi.com/, a Japanese programming language, may be a challenge for non-Japanese speakers. Its source, especially one- or two-liners, just look like natural Japanese sentences. That means there's no explicit word boundary, and the parsing is based on the particles instead of word positions. (Longer program shows indentations and structures, makes it resembles to other proramming languages).
It's not a joke or experimental language. It aims at scripting for end users, and has pretty decent GUI/database/network bindings. Even a book was published.
Yeah I agree - Their use in a programming language is generally so abstract. Knowing the words "for" or "do" doesn't really help a whole lot in understanding a loop construct.
This isn't true for the API though - the API contains a much greater lexicon.
The English language is certainly one of the most flexible ones, on the positive side, and one of loosest ones, on the negative side.
In English, even the most stupid thoughts sound right, just because of the language-culture itself.
So, it would certainly be very exciting to have e.g. a perfect programming language, expressing itself in say Arabic or Hebrew; but, on the other side, computers and real intelligence (or: AI and Real Human Intelligence) are so far away from each other, that it really doesn't matter how 'stupid' the programming-language-language is...
You got it all wrong: native English folks should be forbidden to vote on this comment.
Anyway, believe me or not: you English ones are certainly the most ignorant in culture anyways; all of non english folks around the world would agree on this...
I speak Hebrew, when I have to. That's not the kind of attitude I want towards a programming language.
Hebrew doesn't scale. Neither up nor down.
You can't dumb down Hebrew, it is already a very young language. And you can't extend it up to the modern world or complex concepts because of the Biblical Hebrew heritage, with stiff grammar and way-ambiguous writing system.
You'll have to reinvent it to use it, and good luck with that.
I also speak Russian, proper and street. When I have to.
So much for that.
In my view they are all technical obstacles on the way of greater proliferation of ideas.
Choose one language, whatever it will be. English's fine.
Use it for everything that involves technical concepts. This is what most of the world today does, more or less, and it works out not that bad.
I'm not entirely sold on programming languages resembling human languages, but that's another matter altogether.
While I consider the parent a troll, English is a pretty grammatically odd language among western languages since has dropped a lot of the rigid formalities common in Germanic languages. Also subtlety in the English language tends to come from importing words from other language bases (French, notably) whereas in other languages that's conveyed by modifiers. So it's not really true to call English imprecise, just precision in English comes through subtlety rather than formal structures.
All of that is of course largely irrelevant for programming as the small subset of English words that are used are given precise formal meanings which could be readily exchanged for equivalents in other languages.
The language didn't have a running implementation that I know of; it was all paper-based.
("Timba" means "gambling" in Argentinian slang -- for some reason writing TIMBA programs always reminded me of the late Rene Lavand, the one-armed Argentinian magician.)