"Custom CPU" seems like a bit of a stretch. They have ASIC people on staff (eg https://rocketreach.co/ya-chau-yang-email_61973123), but based on the fact that you can flash basically all their devices with OpenWRT (including those disc-shaped APs), I think the "ASIC" is just a conventional ARM or MIPS core with some peripherals geared toward hardware acceleration of common network tasks— switch routing, vlan tagging, etc.
This page talks about the specific features available for hardware offloading:
That in and by itself is hair-raising! It's absolutely, obviously, crassly obvious that Ui only concern was getting the telemetry out and everything else (like failure modes) was an afterthought. It paints a picture the crowd here are probably very familiar with: Upper mgmt needs this feature a month ago, go implement it asap. No PM, no architect, no nothing, just C-level straight to a dev...
Software is complex and bugs happen everywhere, the firmware wasn't even released yet (it was an opt-in beta) when the bug occurred. I don't like this any more than the next guy but beta is BETA for a reason, to find bugs.
> The first trial of CRISPR in humans took place in China in 2016, when Lu You, a physician at Sichuan University, put gene-edited cells into a lung cancer patient. Since then, other Chinese trials have moved forward, though not much is known about them.
> Last year Chinese researcher He Jiankui caused a global outcry ...
Ethics aside, it’s definitely more than one Chinese scientist working in this area.
Excluding the lens library (as per the article) is unusual, it provides natural getter/setter and row polymorphism type functionality.
More anecdotally, I’d argue parsing libraries are common, just look at the prevalence of attoparsec and others. But most parsing libraries in the ecosystem are parser combinator libraries which don’t support as performance and nice error messages that compilers need
That was where I stopped reading. If a library like lens—used by nearly every haskeller in every project—was disallowed, I don’t know what the purpose of this exercise was.
Restrict the students from using a parser library. I get that. But allowing nothing except that standard library? That’s stupid.
It also makes the language comparison useless. Python has a standard library that is continuously improved and people reach to that when writing programs. Haskell, like C, ossified it’s standard library when it was created and people use the external packages for equivalent up to date libraries.