

This might seem like an obvious question, but wouldn’t it be more effective for the README to be in Korean? Not that having it in English too is a bad thing, but people interested in a language with Korean keywords probably can read Korean more comfortably than English (if they can read English at all).
Anyway, I don’t really see why PLs that support UTF-8 idents can’t just reserve multiple aliases in different languages for their keywords. Rust is mentioned here, so I’ll use that as an example, but Rust could just add a language field to Cargo.toml next to edition that defaults to English (which is what Rust currently uses), and that wouldn’t even need a new edition as far as I’m aware. C# could do a field in the csproj file, C and C++ can use compiler flags, and so on.




This is already possible in Rust. You can import libraries written with different editions, and there are different reserved keywords across editions.
The compiler just looks at what language the library was written in and switches internally based on that.
In my C and C++ example, you’d pass different flags for that library during build time, although I’m not sure how this would work for header-only libraries.
Edit: I see your reserved keywords example is an issue, and I raise you raw identifiers (
r#ifin Rust,@ifin C#, etc)Same way it currently does? It’s not like everyone who writes code knows English, but somehow they can all write it despite the keywords being in English.
The community around that programming language would be responsible for this, would it not? This is already a thing people do, though it’s impossible to translate all educational resources that exist into all languages. Fortunately we have services that can translate things for us though.
It would do no harm here. People already write code in many languages. In most popular programming languages, you can already name things in Korean, French, Russian, and so on. Documentation for the languages exist already in all those languages. There is literally only one thing that would change: the keywords. It’s really not that complicated.