Just waste seven years of your life on a PhD in Asian philosophy and you too can read “I have a number. It says 3. It is called by the first cosmic stem.”
I wrote a bit about this particular rabbit hole. But I think this is genius, actually making the language and not just presenting a hypothetical example.
And it is in Lisp… :-)
However, this Lisp is the one that I implemented myself based on array and not linked list.
What is quite amusing is that the first computer I ever programmed was a TRS80 clone, which used the same exact BASIC language…
Actually, if you edit the grammar file and gives it a different name, you can create your programming language. The Greek version took us about 1h to create.
When I read these lines of instructions, I immediately switch to a particular mode where they cease to be English and become something else: to become code.
Unlike @4ad I do subvocalize when reading code. I even structure my code so it’s more “literate.” I don’t know how exactly to describe that, I suppose in the same way that people have descriptive function names, I try to also have descriptive code structure, so it can be read in 1 pass as often as possible.
This what is the most interesting. It is like listening to music or reading a book. The experience is different for each of us.
For instance, I cannot work on a code without color highlighting. I need these landmarks on screen to detect and recognize structures.
I had this conversation with one my friends who used to listen to classes without ever taking notes, while I would need this process of note taking to stabilize my memory.
And I do read the code on screen in a subvocalization way, as I have alway read novels and articles.
I think it’s somewhat obvious, if you consider that these characters are not available to the English / Latin keyboards, why would they be in the Greek (QWERTY) keyboard? (As a Greek layout user, I can confirm they are not).
I was wondering if some Greek readers would eventually have a look on this blog, as the title was somewhat misleading. Did you have the same kind of feeling as the colleague who helped devise this experiment?
Indeed I do, the English and Greek versions read the same to me. It feels like the same programming language with different visuals: Greek letters are more round hence less dense, so the Greek keywords make the code have less color.
This is why https://hedycode.com/ supports many different languages, so that students can spend their time focusing on learning programming ideas and not learning English.
If this line of thinking is interesting to you, then you should definitely watch this talk from Deconstruct about programming for non-English speakers: https://www.deconstructconf.com/2019/ramsey-nasser-a-personal-computer-for-children-of-all-cultures
Thank you for the link. Actually, I followed the same kind of reasoning as him. The Lisp I implemented is based on Unicode to this effect.
See also Wenyan: https://wy-lang.org/
The documentation is gorgeous on desktop: https://book.wy-lang.org/ I’ve never seen syntax highlighted Chinese before. I wish I could read it!
Just waste seven years of your life on a PhD in Asian philosophy and you too can read “I have a number. It says 3. It is called by the first cosmic stem.”
Nice!!!
I’m amused it’s in Classical Chinese, and even more amused the name of the language is literally the Mandarin word for Classical Chinese.
I wrote a bit about this particular rabbit hole. But I think this is genius, actually making the language and not just presenting a hypothetical example.
And it is in Lisp… :-) However, this Lisp is the one that I implemented myself based on array and not linked list.
What is quite amusing is that the first computer I ever programmed was a TRS80 clone, which used the same exact BASIC language…
Actually, if you edit the grammar file and gives it a different name, you can create your programming language. The Greek version took us about 1h to create.
Isn’t this the same for everyone? How else?
This is the question I ask myself. Is the experience different for someone who speaks English to someone who don’t?
Unlike @4ad I do subvocalize when reading code. I even structure my code so it’s more “literate.” I don’t know how exactly to describe that, I suppose in the same way that people have descriptive function names, I try to also have descriptive code structure, so it can be read in 1 pass as often as possible.
When I read code, I just ingest it, there’s no English “translation”, same with math.
I don’t do subvocalization in general, if there’s any relation.
Also, I don’t do syntax highlighting. Whichever process I use for consuming code, syntax highlighting breaks it. I can’t read highlighted code.
This what is the most interesting. It is like listening to music or reading a book. The experience is different for each of us. For instance, I cannot work on a code without color highlighting. I need these landmarks on screen to detect and recognize structures.
I had this conversation with one my friends who used to listen to classes without ever taking notes, while I would need this process of note taking to stabilize my memory.
And I do read the code on screen in a subvocalization way, as I have alway read novels and articles.
Since you’re using non-ASCII characters anyway, why not have proper operators like ≠ instead of ASCII substitutes?
I think it’s somewhat obvious, if you consider that these characters are not available to the English / Latin keyboards, why would they be in the Greek (QWERTY) keyboard? (As a Greek layout user, I can confirm they are not).
So typing them would not be convenient.
I was wondering if some Greek readers would eventually have a look on this blog, as the title was somewhat misleading. Did you have the same kind of feeling as the colleague who helped devise this experiment?
Indeed I do, the English and Greek versions read the same to me. It feels like the same programming language with different visuals: Greek letters are more round hence less dense, so the Greek keywords make the code have less color.
Thanks. This is very interesting. I did not know this concept before
It is actually pretty easy to do in LispE:
(link “≠” ’neq) (≠ 19 29) true
You can modify anything the way you want. However, the only issue is simply to access it on the keyboard. :-)
In Tamgu, another language that I implemented you can even write: 2x² and it works…
This is why https://hedycode.com/ supports many different languages, so that students can spend their time focusing on learning programming ideas and not learning English.
???
I’m wondering if that’s a type. Felienne spoke at Strange Loop 2022 and demoed Hedy running in many non-English languages including RTL langauges.
Great resource. Thanks
reminds me of https://nas.sr/%D9%82%D9%84%D8%A8/
Actually, someone published a similar link above (see technomancy).