Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Huawei unveils its own programming language the "Cangjie" (gsmchina.com)
40 points by thunderbong on June 25, 2024 | hide | past | favorite | 46 comments


The language docs[1] are CN. Chromium's (and Chrome's?) Translate menu option works well. Alternately, most pages in the table of contents have code for skimming untranslated. One can also cut and paste to translation sites, but giving urls to translate.google (and baidu, yandex) yield blank pages.

There is a language spec pdf, as a link and inline, on page [2]. It's readable, being code dense, but also CN. I don't know how to easily translate it - chromium browser translation, and translate.google, don't seem to.

[1] https://developer.huawei.com/consumer/cn/doc/openharmony-can... [2] https://developer.huawei.com/consumer/cn/doc/openharmony-can...


It looks like a modern statically typed multi-paradigm language with OO, exceptions, higher order functions, pattern matching, annotations, concurrency primitives etc. sitting on top of LLVM and something called CVJM. I guess it is in family with modern C# and perhaps Swift - has kinda a similar syntax to Swift.

There are also some instructions for running it on Ubuntu in the pdf.


This programming language reminds me of a lot of meta-language (ML) styles: function overloading based on pattern matching, immutable variables, and using `spawn` keyword for lightweight threads – a practice also employed by Erlang. Perhaps owing to Huawei's origins as a telecommunications equipment company, where many within the organization are familiar with Erlang, this new language exhibits numerous resemblances to Erlang.


> here are some key features of Huawei’s programming language: Native intelligence, full scene capabilities, high performance and strong security.

Is it a translation issue? That’s non sensical


Yeah, classic MTL. It should be closer to "*built-in* (support for) AI" (basically integrations for LLM prompting) and "*multi-purpose* by design" (basically a grab bag of support for modular code, functional and declarative programming etc.)


"Reflections on Trusting Trust" comes to mind as particularly relevant especially with the planned integration with HarmonyOS.


Trusting software at any level only becomes relevant after trust in hardware is established. In the case of Huawei, I distrust any hardware that they produce, so it doesn't matter what they run on top of it.


Is there any modern hardware that doesn't have privacy issues?


Couldn't find the source or an example. Also I don't read Chinese so this doesn't help. Anyone has links?


In general i think Huawei is in places doing really excellent & promising work. Their DSoftBus architecture in particular is an excitingly ambitious attempt to make software and devices distributed by default, and they have big and small/embedded efforts that smartly support the idea. Their ArkUI is reasonably smartly cut from good modern familiar typescript practices.

But man... the ability to cooperate & share & build a healthy growing technical ecosystem around their stuff seems sooo weak. If you want to even start to play with their (basically re-forked/re-proprietary-ized) HarmonyOS, you need to send them a government id, and their recommended getting started paths are all using some cloud workstation & cloud device testing setups. The barriers to "hello world" are enormous.

It's also super sad seeing what looked like the right thing being done then walked back on. I have a hard time reading the tea leaves, doing the Kremlinology on this, but it sure looks like in 2020 a wonderful OpenAtom OpenHarmony organization was spawned to create a less controlled more openly governed and hence much more enticing community for Harmony. They're still very active & doing great things, but Huawei went & created HarmonyNEXT & seems to have (as previously mentioned) re-forked their own Harmony & are taking it very different directions. There's so little clear information about Harmony in general that it's hard to determine how big this rift/schism really is, so maybe it's not this bad, but it sure looks wild!

I wish Harmony the best. It's be lovely to see Chinese software industry start to tap into some of the socialization of software that's lead to such a blooming of possibilities around the world. I thought OpenHarmony was an excellent first step, and I hope that can be a growing and innovative and supported community & space for these interesting efforts to advance & be seen & be something 3rd parties & lone developers can securely participate in.


I think it's understandable. If they allow any dependence on a community that includes the West, it will be snatched away simply for the sake of damaging China. Western governments have openly stated that their enemy is Chinese prosperity. Huawei has been enemy #1, simply for being successful.

I think the question would be if through China's closer alliances with other BRICS and the global South, would they feel comfortable opening up to developers outside the NATOsphere? They may have just soured on FOSS altogether, seeing as it doesn't allow them to accrue any advantage, and the West will simply ban any sharing in China's direction if US demagogues feel that it might hurt.

> you need to send them a government id, and their recommended getting started paths are all using some cloud workstation & cloud device testing setups. The barriers to "hello world" are enormous.

This seems like they're going to attempt to control things by keeping it on Chinese infrastructure, and only letting allies onto that infrastructure. Maybe that tactic might ultimately lead to China becoming a feasible alternative to US infrastructure in the rest of the world. They will probably have to understand that other people won't tolerate the sort of control they extend over their own citizens' network usage to do that. They'll either have to partition their infrastructure for export, or loosen up domestically. Chinese people are generally patriotic and know what they're up against, they don't have to be watched like children.

As the Western internet goes in the direction of the Chinese internet, maybe China can turn around and go in the other direction.

aside: I love that they didn't give this language an English name, or even a name that an English speaker would have a clue of how to pronounce.


> aside: I love that they didn't give this language an English name, or even a name that an English speaker would have a clue of how to pronounce.

I love that they use English for all of the language’s keywords, base types, and source code examples.


Non-open source development seems incredibly hard to pull off. Apple is basically the one and only company that's not suffering too badly for doing their own thing.

> If they allow any dependence on a community that includes the West, it will be snatched away simply for the sake of damaging China.

I don't think the West cares, at all. In this issue in specific & in general. I'm in DC. We don't have jobs or openings to go screw with China here. Yeah, we go help our ally the Philippines when for example China is sending dudes with swords to attack resupply missions, and yeah there's some politics & optics, but the West would, I believe, love to see a successful & prosperous & healthy China rise, if it could do so without having to exploit or aggress to do so. The jobs in DC are to try to plan for & work towards a civil world. We don't have troll farms here. We don't have giant disinformation machines (well, to be fair we have Fox News & other machinery in the pockets of the ultra capitalists).

It's really hard for me to imagine what HarmonyOS sabotage would like. It's hard for me to imagine Apple or Google or Salesforce or Shopify or whomever going out of their way to go screw with a competing OS. I don't see the CIA or NSA or whomever taking action. I do think there probably is a bit of a fear/control based response Huawei is going through, but the risk of becoming ungovernable seems very low to me. You can still own and moderate an open source project, an open community. You can still steer your own open source effort.

It's so hard for me to imagine the kind of organic growth that leads to lasting success happening, if Huawei stays on such a narrow productized track for their OS. There's such a deep irony to me that the Western socialization of software has served us so so well, but so few other places seem to be able to recreate those values & get that same engagement & organic growth.


Not much info is available

There is a product site but it's pretty empty https://developer.huawei.com/consumer/cn/cangjie/

Documentation is chinese only https://developer.huawei.com/consumer/cn/doc/openharmony-can...

You can register for beta but you probably need a chinese ID card for that ("real name authentication") https://developer.huawei.com/consumer/cn/activityDetail/cang...


Unfortunately, Huawei's efforts with english documentation fell off severely after the sanctions... A symptom of their loss of interest in the foreign markets (look at EMUI for instance). That being said, there'll probably be more details in English ina few weeks, afterall it just launched today.


Here it is: https://developer.huawei.com/consumer/cn/doc/openharmony-can...

It's still using English keywords, and is very similar to a mix of Python and JavaScript, touch of Java.

It's a typical modern language, but they needed their own fork to clean-up some concepts, semantics, and be independent of western platforms, for the unfortunate reason that the US and China are increasingly hostile lately. Well, mostly the US towards China.


This isn't meant as a judgment against China, but China openly wishes to lead an anti-US/anti-West economic and political coalition, has spun up its tech industry largely through espionage conducted against the West, and is increasingly militaristic and aggressive towards US allies (Phillipines, Taiwan) in the region. We can debate about the US approach to maintaining hegemony (the very idea may be fundamentally misguided), but it would be downright foolish for the United States to view China as anything like a friend.


To play devil’s advocate, the US seems to have given up leadership in key areas, so it seems natural for China to play a bigger role in the world.

(1) Industry. Why did the US government aggressively pursue a “post-industrial” economy? China was essentially given the keys to the world’s industries by US leaders in politics and businesses. It’s natural for China, as an industrial leader, to have a bigger role in the world.

(2) Key technologies. Why did the US pursue a laissez-faire approach to high-value technologies, such as solar and battery-powered vehicles? “Let things happen” is an unrealistic economic policy for areas of the market that are winner-takes-all. It’s natural for China, as a leader in key technologies, to have a bigger world stage.

(3) Public education. Why has the US allowed high-quality, regional newspapers to implode? The public is being whipped up to ever greater frenzies by increasingly poor media, which has led to increasingly low-quality leaders, for example, in the Republican Party. It’s natural for countries with more well-informed governments, such as China, to have a larger role in the world.


The US regarded China as a friend since the mid-70s, and it led to prosperity for both countries. The problem is direct US military aggression, and in "maintaining hegemony" which is the neocon idea that regards Chinese prosperity as a threat in and of itself.

It would be wonderful for the US to stop threatening China. China is not threatening the US.


But it's already well-known, in fact an official part of CCP doctrine, that the intention of economic cooperation was always to build strength while downplaying any notion of China as a threat until the conditions were propitious for China to act more aggressively.

And what of aggressive Chinese actions around the Spratly Islands, which are carried out in violation of a very clear 2016 UNCLOS ruling? What has the US done recently to violate Chinese territorial waters in any similar sort of way?

I actually think that actions by the West over the past ~200 years really set the stage for things that are happening today, but I don't think it's fair to paint China as an innocent actor with pure intentions; they're not.


“Us and China are increasingly hostile. We’ll, mostly the US towards China”

2+ decades of IP theft and product dumping, USA finally starts reacting, gets accused of being hostile.


Well, I think it's reactions are definetly "hostile" to be fair. Could you cite some sources by the way? Huawei, iirc, has/had one of the largest R&D funding among companies worldwide? I also thought the US banned them on grounds of National Security, not IP theft?


I don't know much about this but how has the US treated Chinese IP?


As far as I know we generally give Chinese companies the same protections we give US companies when it comes to IP. The same can most definitely not be said about China.


What Chinese IP?


Thank you for your link to a page with code. I motivated me to explore the site further, try alternate translation options, and write an intro comment above.


translate buttons solved this years ago...


Maybe sharing any of it would violate sanctions


Totally not gonna cause any kind of confusion with that name: https://en.wikipedia.org/wiki/Cangjie_input_method



Translate buttons work well.


> multi-paradigm and supports functional, imperative, and object-oriented programming styles

No logic programming, not as good as Verse


> Huawei is a brand known for its great tech innovations.

Pardon me while I wipe the coffee spray off my screen.

A whole lot of phone makers' dev teams just shouted in glee and gave each other fist bumps that Huawei is likely taking an expensive and doomed-to-failure detour.


iirc Huawei shipped one of the first mainstream folding phones at a time when their only competition was Samsung and they both released them around the same time.

Huawei also did fancy stuff with their cameras during their partnership with Leica and they even started the trend of putting periscope zoom lenses in phones if I'm not mistaken.

Their SoC Kirin 970 had the first NPU when all other vendors didn't yet ship any neural acceleration in hardware.

Sure, they're probably stealing from the competition, but so does everyone else.

They're also doing remarkable stuff with modern mobile SoCs despite Western sanctions.


My guess though is that it's all just a show. I really doubt that other companies are incapable of producing devices like that. They just don't launch them because they're probably not viable one way or another (quality control, demand, ROI, etc).

And yeah they're definitely stealing. Huawei has been caught pretty blatantly doing so.


They're kinda the only game in town in China. Which translates to they can dictate what language chinese developers code in and lock out any potential non Huawei hardware while they sit on a monopoly.


Aside from Xiaomi. Similarly, Taiwan has TSMC and SK has Samsung.


I think you've seen a few cheap Huawei phones and you don't know even 1/10 of their products. Don't be so dismissive and don't underestimate China.


Ok, can you make the case they've been innovative?


Not sure if it meets your criteria for "innovative" (the word has become practically meaningless anyways), but the HarmonyOS [1] project is very interesting. Microkernel-based OS that runs across laptops, tablets, smartphones and IoT devices. It's great that we're finally getting a true competitor to the iOS and Android duopoly in the mobile space.

1: https://www.harmonyos.com/en/


A crude way to put it would be to create something different that sells before being aped by competitors.

That seems interesting. For proprietary mobile OS I always liked BB (so much for that..), but kind of hoping the linux distros get way, way better.


Two examples:

1. Huawei was the largest contributor to 5G development.

2. The P20 Pro significantly advanced the state of the art in phone cameras. It was hands-down the best phone camera available at the time. Unfortunately, soon after that phone came out, the US started sanctioning Huawei in basically every conceivable way, which made them go from market leader in Europe to basically nonexistent in the West.


The Huawei phones I have seen in China have been very impressive and are least better than Samsung.


Existing "Western" coding languages might have democratic ideas.

(I am wondering if this is the thought process, of the PRC appointed, unskilled person pushing this change.)

https://machinelearningmastery.com/voting-ensembles-with-pyt...

Oh no! Voting!


I would never call china democratic, but there is voting in china.


That's not the point being made, but further, even a starving man often eats.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: