Live data from Hacker News

Non-English-based programming languages

en.wikipedia.org

51–60 of 228 posts

Re: Non-English-based programming languages

#51

The Wikipedia list does not mention Tampio, an OO language where programs are written in proper Finnish: https://github.com/fergusq/tampio As an example, here is kertoma.itp (an example routine to calculate a factorial): Pienen luvun kertoma on riippuen siitä, onko se pienempi tai yhtä suuri kuin yksi, joko yksi tai pieni luku kerrottuna pienen luvun edeltäjän kertomalla. Luvun edeltäjä on se vähennettynä yhdellä. Ol…

This is absolutely amusing. Seems that the creator of the Tampio language has created several esoteric languages, one of them being domain specific language Retki for writing interactive fiction. It is also based on Finnish language. https://www.kaivos.org/projektit.html

Re: Non-English-based programming languages

#53
post #24

Seeing a programming language in your native language after working with English ones, you discover that it looks and sounds pretty ridiculous. My belief is that the native language is ingrained on a low level in the brain, so it's decoded ‘in the hardware’ and directly invokes meanings and associations, whereas a second language goes through at least some level of conscious processing. The very same way, I'm physica…

I remember the english associations of programming words being pretty confusing, to be honest. Generic, for instance, means a standard or non-descript object. Abstract, for another, means something without concrete existence. Static means something that doesn't move, or electrostatic charge. Void is a pretty archaic/unusual word for a space. All these things are a little bit like how they are used in programming lang…

Capital letters didn't mean shouting until after the internet - or at least texting, BBSs and such - became popular.

Re: Non-English-based programming languages

#54

Earlier quoted context omitted.

I remember the english associations of programming words being pretty confusing, to be honest. Generic, for instance, means a standard or non-descript object. Abstract, for another, means something without concrete existence. Static means something that doesn't move, or electrostatic charge. Void is a pretty archaic/unusual word for a space. All these things are a little bit like how they are used in programming lang…

These are all somewhat sloppy versions of the definitions of these words in common use. “Generic”, “general”, “generalize” and “specific”, “special”, “specify”, etc. all come from the relation between “species” and “genus”, where genus is a larger category containing a species. The use of these in a programming context is not too far removed from the same usage in non-technical conversation or in (non-biology) techni…

>which has no lower case

This is exactly what bothers me. Why no lower case? Why not no upper case? You'd need the same number of keys, and it would be more legible. It would use the same amount of space.

Re: Non-English-based programming languages

#55
post #2

I used to think about this when I was a student. I could totally make a programming language in Thai. Surprisingly, one of the main issues that I thought of was a cultural one. Thais culturally don't use a single word to encapsulate complex meaning. We use a combination of words to capture that kind of meaning. Just to give an example: a taxi driver is 'human-drives-taxi' in Thai. A barber is 'tradeperson-cuts-hair'.…

I guess Russian is in a better position because it doesn't use compounds so much—but it made the borrowed programming terms into Russian words by freely inflecting them, which is a very Russian trait. Whenever an imported word doesn't sound quite right for Russian, it gets adjusted fast, similarly to how this occurs in Japanese.

We now have a set of programming terms that are a mix of: borrowings which already existed in other contexts (possibly of Latin or similar roots), Russian words instead of English ones, and straight up transliterated calques. This all coexists completely naturally because the words now serve as roots for further derivation and forming a layer of slang on top of the formal terms. Notably, young people are quick to appropriate foreign words—and they tend to be the ones who get into new tech.

There were (joking?) proposals for using Russian-root words for computing terms, and by now they sound like bringing an Orthodox priest speaking Old Church Slavonic into a datacenter.

Re: Non-English-based programming languages

#56
post #24

Seeing a programming language in your native language after working with English ones, you discover that it looks and sounds pretty ridiculous. My belief is that the native language is ingrained on a low level in the brain, so it's decoded ‘in the hardware’ and directly invokes meanings and associations, whereas a second language goes through at least some level of conscious processing. The very same way, I'm physica…

Note: I'm not a native speaker. English doesn't have genders and cases [1] so grammatical constructs such as if/then/else, case of, unless etc. suffer much less than when you have gender and case. Oh, god, and plural forms of those. For a Russian speaker using a PL in Russian is constant pain as your brain tries to add all the missing parts to the words: if(count(letters ) > limit ){ words.append(word ) } etc. [1] We…

https://en.wikipedia.org/wiki/Analytic_language https://en.wikipedia.org/wiki/Isolating_language

I buy your thought, and your prediction means that Mandarin speakers might have an easier time with a Mandarin programming language than a latin or slavic language speaker would have with a latin- or slavic-based programming language.

Re: Non-English-based programming languages

#57
post #24

Seeing a programming language in your native language after working with English ones, you discover that it looks and sounds pretty ridiculous. My belief is that the native language is ingrained on a low level in the brain, so it's decoded ‘in the hardware’ and directly invokes meanings and associations, whereas a second language goes through at least some level of conscious processing. The very same way, I'm physica…

"That Japanese Man Yuta" on youtube mentioned on one of his videos that Japanese-y/Chinese-y roman alphabet fonts completely break his brain when he sees them, and he can't see them as English, just horrible nonsense.

Re: Non-English-based programming languages

#58

Earlier quoted context omitted.

These are all somewhat sloppy versions of the definitions of these words in common use. “Generic”, “general”, “generalize” and “specific”, “special”, “specify”, etc. all come from the relation between “species” and “genus”, where genus is a larger category containing a species. The use of these in a programming context is not too far removed from the same usage in non-technical conversation or in (non-biology) techni…

>which has no lower case This is exactly what bothers me. Why no lower case? Why not no upper case? You'd need the same number of keys, and it would be more legible. It would use the same amount of space.

Take it up with Émile Baudot? https://en.wikipedia.org/wiki/Baudot_code

Re: Non-English-based programming languages

#59
post #49
post #21

It is a fun exercise to take a non-english language, look at its idiosyncrasies, and design a programming language with that. My native language is German. Some ideas: * We can take nouns and combine them to longer nouns. A "list of objects" is "Objektliste". Parsing will be a challenge but it makes the language more terse and auto-completion is faster. * We also have gender specific articles. It is "das Objekt" and…

> All nouns start with an uppercase letter, so your loop index must be "I" or "J". We could have user-defined qualifiers (like const) which are distinct from variables because they start lowercase. So where you have to use @ in Python, we just use lowercase. Yeah, but i and j come from math. I've never seen a math paper where people summed a variable using a capital subscript. I think it might be more interesting to…

Also, a loop index is a placeholder for a numeral, like "eins", "zwei", "drei", hence

  Für i = 1 bis 2 ...
However, using articles,

  Für das I = 1 bis 2 ...
And we may want to use a "Doppelpunkt" and an exclamation mark, since this is still a command:

  Für i: 1 bis 2!

Re: Non-English-based programming languages

#60
post #24

Seeing a programming language in your native language after working with English ones, you discover that it looks and sounds pretty ridiculous. My belief is that the native language is ingrained on a low level in the brain, so it's decoded ‘in the hardware’ and directly invokes meanings and associations, whereas a second language goes through at least some level of conscious processing. The very same way, I'm physica…

Note: I'm not a native speaker. English doesn't have genders and cases [1] so grammatical constructs such as if/then/else, case of, unless etc. suffer much less than when you have gender and case. Oh, god, and plural forms of those. For a Russian speaker using a PL in Russian is constant pain as your brain tries to add all the missing parts to the words: if(count(letters ) > limit ){ words.append(word ) } etc. [1] We…

Interestingly, Perligata (a module that allows writing Perl programs in Latin) attempts to use case endings in variable names to denote their roles in expressions:

http://users.monash.edu/~damian/papers/HTML/Perligata.html

Post reply on HN