It would be incredibly computationally costly to add a natural language 
translator to the compilation process. I'm not sure, but I think also 
identifiers in Go can only be plain ASCII, ie pure latin script (and 
initial character must be a letter)

These days in most countries where foreign scripts are used there is some 
(usually fairly standardised) latinisation rules.

The thing is, Go, speaking in terms of idiom, has the opinion that names 
should be chosen carefully and follow rules about stutter and so forth. I 
find myself reaching for a thesaurus a lot when writing code. If I came 
across code that had words like 'benutzer' or 'nachalnik' I'd know what I'm 
looking at but I know a lot of vocab from latinic and germanic continental 
european languages.

It's unfortunate, but I don't think it's really a problem. Language 
learning is quite peculiar - most polyglots, who speak 4 or more 
significantly different languages, will tell you the more languages you 
learn the easier each next one gets. Computer programming is about language 
also. I can express a simple algorithm in about 5 major computer languages, 
as can most programmers who are much over the age of 40.

The thing is, with the exception of maybe German and Russian, almost every 
paper written on any computer science subject is in english. You can't even 
hardly understand the principles without english, but let's say you want to 
get into distributed systems or language processing... ha!. Plus, english 
conveniently has such a rabble of different syntax and semantics that 
resembles the variations in programming languages, left branch, right 
branch, prefix, suffix, infix, compound words and modifiers, etc. Just to 
contrast, Georgian is 100% left branch syntax. Go's function syntax is an 
example of right branch syntax (C's is a jumble of both).

On Monday, 29 April 2019 07:36:37 UTC+2, Chris Burkert wrote:
>
> I recently read an article (German) about the dominance of English in 
> programming languages [1]. It is about the fact that keywords in a language 
> typically are English words. Thus it would be hard for non English speakers 
> to learn programming - argue the authors.
>
> I wonder if there is really demand for that but of course it is weird to 
> ask that on an English list.
>
> I also wonder if it would be possible on a tooling level to support 
> keywords in other languages e.g. via build tags: // +language german
>
> Besides keywords we have a lot of names for functions, methods, structs, 
> interfaces and so on. So there is definitely more to it.
>
> While such a feature may be beneficial for new programmers, to me it comes 
> with many downsides like: readability, ambiguous naming / clashes, global 
> teams ...
>
> I also believe the authors totally miss the point that learning Go is 
> about to learn a language as it is because it is the language of the 
> compiler.
>
> However I find the topic interesting and want to hear about your opinions.
>
> thanks - Chris
>
> 1: 
>
> https://www.derstandard.de/story/2000101285309/programmieren-ist-fuer-jeden-aber-nur-wenn-man-englisch-spricht
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to