Funny side story, my legal name in fact is not Felienne but Félienne! But I never write the accent because it used to be such a hassle to type and you can't get it in a domain or email address...
Conversation
Anyway... back to PL design.
With the new grammar, we now have working variable names, my tests (which test what Python code results from the Hedy to Python transpilation step) all pass yeah!
Example of a resulting Bengali program:
নাম = 'হেডি'
print('আমার নাম is '+নাম)
1
1
12
This is valid Python, since Python supports non-ASCII letters since PEP 3131 (2007). That's why they have the nice grammar I could steal.
So before I deployed, I figured it would be good to test the code in the Hedy interface too and lo and behold... It says "bad token"?!
2
1
13
Turns out that we generated valid Python... but that Skulpt, the js implementation we use to run Python in the browser does not support PEP3131. Again, I do not blame them, I am very happy to have been able to string together OS projects enabling Hedy. But it was shit for me!
1
12
So, step 2: I now have to convert my already legal Python such that Skulpt likes it too. I could have made a mapping with like a, b, c, etc but I ended up hashing the variable names cause it was easier [See how there too is an assumption, hash gives me hex which will be latin]
1
1
9
Which will lead to a worse user experience, because when Python error messages leak out (they sometimes do) the error message will now be undefined name 8bf84y891237frb3.
1
10
Friends in PL, do bookmark this thread for when someone says PL design is not political!
Assuming a word is a-zA-Z is political.
Not implementing standards that include all char sets is political.
Choosing to spend energy on fixing this is political.
3
17
71
And of course, the next station is.... localized keywords in all character sets! Check back in 3 years hahahahaha
5
15
recently posted a short video on their approach to localising library identifiers and keywords, taking advantage of a structure editor! They also posted some related work too:
1
2
Would definitely be curious to see what could be done for text-based languages – even if I hope that languages based on structured editing eventually take off. 😅

