top | item 24330206

(no title)

cptwunderlich | 5 years ago

There have been some attempts for localized programming languages. In fact, e.g., MS Excel Macros are localized (e.g., "SUMME()" in german instead of "SUM()"). There is even a Wikipedia page: https://en.wikipedia.org/wiki/Non-English-based_programming_...

I'm a bit conflicted. On the one hand, I am all for language diversity and empowering local languages. It may also help novices and very young learners. On the other hand you are already learning an unfamiliar formalism and it hinders interoperability, sharing and collaborating. Hm..

discuss

order

n0rbwah|5 years ago

In France, we have a tool called WinDev which isn't used very much outside of France. It is a proprietary abomination used to create graphical applications (and with sisters tools WebDev and WinDev mobile for web development and mobile development). It completely locks the programmers into their shitty very closed wall garden (for example, you're completely locked into using their own proprietary version control tool and absolutely cannot use an alternative).

Anyway, the coding in their applications is done with their very own proprietary shitty programming language: WLangage (https://fr.wikipedia.org/wiki/WLangage). This language has the particularity of being available in three localizations: English, French and Chinese. And you can mix all three in the same codebase for some extra fun!

It's not very well known outside of France so it's not very surprising that this language isn't cited on the wikipedia page you linked.

BadInformatics|5 years ago

I encountered this once in an internship in Switzerland (didn't have to write any, thankfully). Quite the esoteric little platform indeed!

simplyinfinity|5 years ago

Yeah, localized languages don't work that well on global scale.

Side effects may include large number of bubble communities not being able to contribute to one another which leads to fragmentation and friction. What will happen to large open source communities? Will those have only French people working on networking and Russians working on CPUs ? Also large companies won't be able to hire from smaller programmer pools because they will have to learn yet another spoken language.

matsemann|5 years ago

They don't have to be for a global scale, though.

Learning programming as a kid, it could be easier when the standard library has functions in the native language. Learning if, while etc are easy as they are just tokens. But the hundreds of functions are hard to look up when one's new and cannot easily understand what a function does based on a foreign description.

saint-loup|5 years ago

Are there any attempts to have it both ways?

Like, the source code stays in English but my IDE translates keywords to and from my language.

jannes|5 years ago

That's exactly how Excel does it.

Personally, I don't like it. I prefer English function names.

However, the most annoying thing about Excel localisation is that the behaviour of CSV import/export changes depending on the OS locale setting. It doesn't even let you override it. You actually have to change the OS settings to get the English behaviour.

remix2000|5 years ago

If you made all keywords fit one character or so and allow selective installation of dictionaries, that would probably also decrease source code form size significantly! That would be great even if you never were to use any language other than English. I’ve played with APL a bit and found out that one can configure Emacs to replace APL’s cryptic symbols with English words using this: https://www.emacswiki.org/emacs/PrettySymbol

APL is however not a language that one would consider using seriously.

twanvl|5 years ago

Excel does this for function names. If you open a file in your localized copy all the names are translated.

quickthrower2|5 years ago

There aren’t that many keywords so just learn them. Plus many words don’t make sense eg Promise doesn’t tell you what it is, they could be called promessa and we’d get used to it.

purple-again|5 years ago

What does that mean? Promise is an excellent one word description of the underlying phenomenon. Your language promises that the code will finish executing before the code you place in your then/error blocks allowing you to safely write some asynchronous logic in a synchronous world.

hoseja|5 years ago

Excel localization is absolute PITA, mainly because there is no easy way to turn it off.

mrtksn|5 years ago

Is there a localised language that uses structures and ideas of the locale? This could be significant because the human languages has an influence on how we think. People count differently, reason differently, imply differently when thwy have different language tools in their disposal.

runeb|5 years ago

Apple Numbers does this as well, making it very difficult to find the right function, autocomplete, doesn't play well with googling for solutions etc.