Citrine: Localized Programming Language
31–40 of 72 posts
Re: Citrine: Localized Programming Language
#32The first? Algol 68 allowed implementations to have language-specific versions of keywords. I remember seeing a French language Algol 68 book in the stacks at the OU library that had listings with French keywords. I don't remember what they did with the portmanteau words that Algol 68 (and much more so in the Revised Report) favored, like "ouse" and "elif".
Re: Citrine: Localized Programming Language
#33This actually looks cool! Besides the "localized" stuff, it borrows some good parts from Smalltalk, JavaScript and Lisp. I'm curious now.
Re: Citrine: Localized Programming Language
#34The Chinese version looks like just bad machine translation. `Object` is translated to `宾语` which means the grammar component object in subject, verb, object, etc . The `power` operator is translated to `功率` which means A measure of the effectiveness that a force producing a physical effect has over time. `Ceil` is translated to `细胞` which means Cell ??? :-(
> `Object` is translated to `宾语` which means the grammar component object in subject, verb, object, etc. Sounds right (though OOP treats objects artificially as grammatical subjects, they are the things on which functions operate, and thus more like what would normally be grammatical objects; they are the patients rather than the agents of actions.)
Re: Citrine: Localized Programming Language
#35The Chinese version looks like just bad machine translation. `Object` is translated to `宾语` which means the grammar component object in subject, verb, object, etc . The `power` operator is translated to `功率` which means A measure of the effectiveness that a force producing a physical effect has over time. `Ceil` is translated to `细胞` which means Cell ??? :-(
> `Object` is translated to `宾语` which means the grammar component object in subject, verb, object, etc. Sounds right (though OOP treats objects artificially as grammatical subjects, they are the things on which functions operate, and thus more like what would normally be grammatical objects; they are the patients rather than the agents of actions.)
Re: Citrine: Localized Programming Language
#36> designed to allow every man to write code in his mother tongue. Hopefully, by doing so, Citrine will make coding accessible to a wider audience. One day that audience might extend to women.
Re: Citrine: Localized Programming Language
#37User feedback was interesting. Some non-native speakers of English objected to this, on the basis that it was a lot easier for them to distinguish language keywords (in English) from user symbols (typically in the user's language); language acted as a kind of syntax highlighter for them.
Also, they felt it disorienting to express in their own native language programming constructs that they'd learned in English. For example when one translates "a `while` loop", the keyword `while` is often left untranslated as there is no equivalent domain-appropriate word in the target language, and the generic translations don't "sound" right.
Re: Citrine: Localized Programming Language
#38Weird how a language that exists to be more welcoming and accessible uses needlessly gendered language on its website. "Designed to allow every man to write code in his mother tongue" could easily be written as "designed to allow every person write code in the language they are most comfortable with."
Re: Citrine: Localized Programming Language
#39I've said too much about this subject in the past [1], but my litmus test for "localized" programming languages is a Korean support (both because I speak it natively and because it is very much different from most Indo-European languages). It spectacularly fails. At the very least it is evident that Citrine only ever cares about languages with prepositions (e.g. `x on: 'greet:' do: { ... }`). [1] https://news.ycombin…
You’re confusing keyword/identifier localization for natural language. I agree with everyone who says NL is the wrong problem to solve, but that’s not what Citrine is attempting to do.
Look at it this way: Citrine code is NOT natural English either. At most, it is a sort of “pidgin English” where individual words can be readily understood but the grammar is wholly artificial.
For instance, a Chinese or Japanese dialect should continue to use whitespace to separate identifiers. It’s a programming language, not a natural one, and that difference is the point. Trying to “fake it” leads to dead-end mistakes like AppleScript. Trying to do it for real creates exactly the sort of ambiguities and imprecision that a programming language is meant to eliminate.
It’s about finding the right compromise between human accessibility and machine precision, and anything that breaks down barriers between the traditional US English-dominated programming world and the billions of humans who speak something else has got to be a step in the right direction.
Re: Citrine: Localized Programming Language
#40Earlier quoted context omitted.
My thoughts exactly! but it looks like op is Dutch in which language google translation tells me "mens" can mean "person", so hopefully it is just an esl thing
Well, no, 'mens' translates to 'human' and wouldn't normally be used in this sentence (it'd put unnecessary emphasis on the species of who would be programming, which just feels weird). I can't think of a Dutch version of the same sentence that wouldn't make the subject explicitly male (well, there are some archaic versions that would use 'alleman' but I can't think of one that wouldn't sound weird).