Live data from Hacker News

قلب: a non-ASCII programming language written in Arabic

nas.sr

51–60 of 657 posts

Re: قلب: a non-ASCII programming language written in Arabic

#51

Retrofitting an existing language with flexible syntax (in this case, LISP) to non-English languages is relatively easy. They are not necessarily bad and can be useful for learners and casual users, but deviating from ASCII alone doesn't remove a cultural bias as the OP states. Programming languages have to be developed from scratch to fit to other spoken languages and cultures in my opinion. I'm aware of multiple (n…

Now that I think about it, languages that aren't subject-verb-object probably find OOP insane.

I tried to find an example of this and found a somewhat related article about how Japanese grammar maps nicely onto ruby: https://thoughtbot.com/blog/learning-japanese-the-rubyist-wa...

Re: قلب: a non-ASCII programming language written in Arabic

#53

Retrofitting an existing language with flexible syntax (in this case, LISP) to non-English languages is relatively easy. They are not necessarily bad and can be useful for learners and casual users, but deviating from ASCII alone doesn't remove a cultural bias as the OP states. Programming languages have to be developed from scratch to fit to other spoken languages and cultures in my opinion. I'm aware of multiple (n…

> Programming languages have to be developed from scratch to fit to other spoken languages and cultures in my opinion. This is really interesting. I wonder if there are some human language with properties that would allow for programming language constructs that we don't really use today. My linguistic skills are not good enough to really suggest an example, but considering there is a language[0] (almost) without rel…

As a very superficial example, Korean is agglutinative and you can't easily take affixes apart from a word. For example, you can't easily recognize that the following sentence has a noun "언어" and a verb stem "배우-" without a substantial knowledge about Korean:

    언어를 배운다.
    [topic omitted] Language-(object marker "를") learn-(verb conjugation "ㄴ다").
    (One) learns a language.
Many syntaxes are based on easily segmented tokens, or words, so they are not a good fit for Korean and other agglutinative languages. My friend has made a programming language, Yaksok [1], specially made for Korean and solving this problem by making all invocations as a pattern, somewhat similarly to AppleScript:

    # - "약속" is a keyword for procedure declarations.
    # - Unquoted words are formal parameters.
    # - Anything quoted should occur literally, except for slashed alternations
    #   used for affixes varying by the preceding word.
    약속 대상"을/를 배운다"
        ...
Of course this results in a very unconventional parser.

[1] http://yaksok.org/

Re: قلب: a non-ASCII programming language written in Arabic

#54
post #3

Oh, it's just an art project. We haven't yet seen a serious non-English programming language. One would have expected one in Chinese or Japanese by now. There was COBOL in French, once, with French words and word order, but it never caught on, even in Francophone countries.

I have seen schemas written in Japanese but yet to see anything in Chinese (apart from comments) despite living in a Chinese speaking region.

Re: قلب: a non-ASCII programming language written in Arabic

#55

Earlier quoted context omitted.

It is beautiful, but it's a barrier also. I don't think you should be barred from learning to code because you don't speak a language which uses the Latin/ASCII character set.

feel the same. there's a lot of people out there who never get a chance to learn any english. to write your own code based on ascii / latin char set might be ok, but to interpret other's code etc. would be very difficult. so for example in a school, having only code examples with ascii could be a significant barrier to teach ,when all other subjects presented are in the local language / character set.

Pardon my french but that's a lame excuse. We are talking about maybe 20 crucial words like "if", "for", "while" etc. If somebody can't learn those, progressing with fully formed programming language will be a mighty challenge.

The drawbacks are numerous and huge - today you can get any code from any guy on the planet, and can read it instantly. He can name variables and comment stuff in his native language, still no problem. That's extremely empowering, and to lose it just that somebody doesn't have to learn few keywords is... dumb.

Having native programming languages beyond some playing around is foolish and step in wrong direction for all of us on so many levels, especially long term.

Re: قلب: a non-ASCII programming language written in Arabic

#56
post #13

Earlier quoted context omitted.

There were localized versions of Visual Basic for Applications in Office 95, at least there was a German one. I had the "pleasure" to use it once, and I can tell you it was no pleasure at all. The first problem was that for some keywords there is no obvious translation (for example "if" can be translated to "falls" or "wenn"), so I had to look up the keywords again and again. Then of course it wasn't easily possible…

This is the bane of my existence when working with Excel. I'm spending too much time figuring out that "RAND" (which is what you'd find in search) is "ZUFALLSZAHL" in German Excel (which I use at work) and "ALEATORIO" in Spanish (which I use at home).

Is this on VBA or for formulas too?

Re: قلب: a non-ASCII programming language written in Arabic

#57
post #35

Earlier quoted context omitted.

Native English speakers don’t

This is such an odd exaggeration; the number of words you have to learn to type are just abysmally small. You don't have to know what the word 'integer' is to know how it works in your code. I-N-T, three letters, this symbol means that the number does not have a fraction associated with it. As for the code base and documentation? Well, wouldn't you rather a lingua franca as opposed to trying to Google Translate your…

[deleted]

Re: قلب: a non-ASCII programming language written in Arabic

#58

Earlier quoted context omitted.

It is beautiful, but it's a barrier also. I don't think you should be barred from learning to code because you don't speak a language which uses the Latin/ASCII character set.

I disagree. Calling English keywords in programming languages a barrier is the same as describing symbols in mathematics as a barrier. It doesn't matter which word signals an IF clause, the global uniformity is what is really important. English has become the basis for the symbols of programming. You should not think of code as prose, it is simply code .

I don't think keywords are the problem, it's library function/type names that will be much more difficult to learn / interpret.

Re: قلب: a non-ASCII programming language written in Arabic

#59
post #21

"All modern programming tools are based on the ASCII character set, which encodes Latin Characters and was originally based on the English Language. As a result, programming has become tied to a single written culture. " And that's good. That means "we" hackers/programmers/developers/coders/whatever share something in common, no matter our culture/country/religion/beliefs/whatever. Heck, I'd even go as far as saying…

ASCII doesn't deal with (local) extensions of the Latin alphabet (in particular not diacritics), but to say ASCII is based on English... They are the basic Latin chars, no more, no less.

Re: قلب: a non-ASCII programming language written in Arabic

#60

Earlier quoted context omitted.

> it never caught on, even in Francophone countries I started programming at least 4 years before I started learning English. In my experience, not knowing what "if" means doesn't change anything because I never thought of code as prose. Whether it's called "if", "si", or "wenn", all that changes in my head is "what's the magic word that I have to insert before I can branch my code?". This, I believe, it's why locali…

Agreed. I started to program in BASIC some 7 years before I started to learn English. I had no idea what PRINT or LET meant and was able to program without any problems. Hm, even today, I have not idea why "for" is used for loops (?) and I'm using it without any problems.

My high school teacher had a very legit explanation for the meaning of “for” in that context. But I can’t remember it now. Nowadays I write it because it’s expected, not because there’s a hidden deeper meaning.
Post reply on HN