The Wa Programming Language
github.com
github.com
- Home: https://wa-lang.org - Github: https://github.com/wa-lang/wa - Playground: https://wa-lang.org/playground/
> 自主可控、纯中文国内社区
> Independent and controllable, pure Chinese domestic community
Doing software projects for domestic and foreign users is extra work, and the community seems to fragment along language lines. For example: https://www.esp32.com/index.php
I guess a 纯中文国内社区 is one way to solve this, but then why post on hacker news? This seems contradictory.
Well, we've been doing this implicitly with English for a long time, so I guess Karma is a bitch.
On the other hand, I wrote a French technical blog for years, and it was way harder to reach a lot of people, so if I had to do it again, it would be in English.
They don't have this problem, since 1B people are Chinese.
Or it's their loss. 7B people don't speak a word of Mandarin, and even more can't read and write it.
In which case I'm curious what are the differences or use case vs just using Go?
But, this is not at all how go looks:
fn add(a: i32, b: i32) => i32 {
return a+b
}
It looks heavily inspired from the syntax used in rust or zig tho. (fn keyword, variable type syntax, return value)> what are the differences or use case vs just using Go?
- go has a different syntax, different keywords, different ecosystem and so on.
- go is a general purpose programming language, while wa is explicit in targeting wasm.
I don't see any special similarities more than they are c-style family languages.
fn add(a: i32, b: i32) => i32 {
return a + b;
}
vs func add(a i32, b i32) i32 {
return a + b;
}
Compare with a syntax like C, C#, or Java where you have tokens in the declaration in almost the reverse order i32 add(i32 a, i32 b) {
return a + b;
}
The two (Golang and Wa) are certainly distinct, but I would say they are closer than simply both being C-style for this particular case at least.The same is true for colons in Python: they're not really necessary but provide slighlty better readability plus syntax highlighters can get away with using regexes, I guess.
The Hanzi had me going for about five seconds; they don't mean 和.
Anyway, if anyone does write a programming language with keywords and text in Kanji, let us know.
https://ja.wikipedia.org/wiki/%E6%97%A5%E6%9C%AC%E8%AA%9E%E3...
You mean Pinyin (拼音), not Hanzi (漢字).
It obviously is not. What does “wa” mean in Chinese? Or is it really just (w)eb (a)ssembly?
Chinese is a kind of hieroglyph. The shape of "凹" is very similar to the logo of this project, and it looks like the letter "C" rotated 90 degrees counterclockwise. So it maybe means a C/Coder that lies down.
Every project has bugs and discussions how to work around them. This project has 12 Github issues. How severe are they? Will I hit them? I don't know because they are written in Chinese. (But this is not unique to Chinese, I feel the same way about French projects on OCaml and Coq).
An estimated 2 billion people understand English globally. That number is only growing.
While Excel has probably the most programmers in the world, their instructions are localized.
And among programmers of other programming languages I bet that way over 50% understand English. So I’d say that most programmers do understand English.
And what's the reason for that? Exactly what the comment you are answering says.
>> While Excel has probably the most programmers in the world, their instructions are localized.
And what a mess that is. And if you have a problem chances are that the answer will be in English. So, again, you have to know English.
>> And among programmers of other programming languages I bet that way over 50% understand English. So I’d say that most programmers do understand English.
Again, they don't have an option, have they? Who knows? Maybe, someday in the future we will have to learn Mandarin.
People might not have much of an option because English is there de facto, but learning English is much much better than having to learn both English and Mandarin
English is the JavaScript of human languages.
No denying English spelling is particularly atrocious – but still easier than learning Chinese characters. The Chinese writing system is arguably the most difficult to learn of all writing systems in common modern use – even if your native language doesn't use the Latin alphabet, the Latin alphabet is going to be much easier to learn than the Chinese writing system is; even learning crazy inconsistent English spelling is likely easier.
Knights ride at night nightly, to get knighted.
Does that make any sense to someone learning English.
It's a silly argument though. Other countries are willing to learn English. We aren't willing, not nationally anyway, to learn anything else.
Essentially you can learn middle-out vs other languages.
To understand a programming language you just need the bare bones.
English is the JS of programming languages though, being that it's everywhere and it's very easy to use.
As well as the writing system, there is another factor: Mandarin is tonal, English isn't. If your native language is non-tonal (true of roughly 50% of the world population), trying to learn a tonal language is an extra challenge on top of the general challenge of trying to learn another language. Your brain just isn't used to considering tone as semantically significant.
Not really; there are no localized function names for languages that use non-Latin based scripts because otherwise one would have to constantly switch keyboard layouts to type any formula. Except for the Russian version of Excel which uses Latin-spelt cell names (D1, F2, etc.) but Cyrillic-spelt function names (ЕСЛИ, СУММ, БЕССЕЛЬ.J, etc.), of course.
> Maybe, someday in the future we will have to learn Mandarin.
Optimists study English, pessimists study Mandarin, realists study M16.
For the Wa language, I hope to have a lightweight WASM Native language: no GC, no Goroutine. Also, I hope functions with "Chinese" names can be exported, which is forbidden in Go.
Over 7million programmers in China have to learn English first before they can study how to program, for most of them, "下标不可超过数组长度" is much more easier to understand than "the index of a array should not exceed it's length".
It really is not the fair comparison and I get what the parent was refering to.
For example, Vue is founded by a Chinese. But the development happens in English. Issue tracker, RFC, code comments, all in English. Therefore, people around the world would know what direction the project is heading towards.