You're right that I haven't spent much time thinking about why a project that I'm not involved with, and that is of only moderate general importance, has decided to switch from one programming language to another. Anyone who's convinced themselves that this is all part of some elaborate scheme is almost certainly overthinking it.
HN user
foldr
The simplest explanation is that the Bun team decided to try rewriting Bun in Rust because they had some frustrations with Zig. I haven't seen any evidence that there's more to it than that. It's easy to get sucked into all the internet drama, but that only exists because Zig's author lost his cool and wrote a salty blog post, not because of any conniving on Athropic's part.
Is anyone else failing to understand all the internet drama surrounding this?
The rewrite may work out on a technical level or it may not. Let's wait and see. The Bun project did not swear a blood oath to use Zig forever, and it's ultimately their choice to switch to a different programming language.
Beyond that, people seem to be incredibly emotionally involved with this, for reasons that entirely escape me.
Even in Freedomland most people don't carry firearms. What else are you realistically going to do if someone has a gun except run or hide? This seems like a total non-story. Especially in a country with ~30 firearms homicides per year (which is about 1% of the per capita rate in the US).
That’s interesting, thanks. I agree that with all those extra protections enabled, there is no security issue.
Will it not need unsafe-eval, though? It still creates the potential for HTML injection to lead to execution of untrusted code. Execution of untrusted code is the real issue, regardless of exactly how that code ends up being evaluated and executed. Even if Hyperscript were to have its own interpreter (so that it didn't even need unsafe-eval), you'd still have the same fundamental vulnerability (unless you add nonces, or some such).
the risk from Hyperscript is not greater than any other JavaScript in the application.
This is not really the case. If all of your client-side code is loaded via <script src="..."> tags from bundles on your server, and you have a CSP that blocks unsafe-eval or unsafe-inline, then you have a pretty good barrier against execution of untrusted code on your page.
This is a pretty good argument in the case of software written by a small team of experienced engineers. In that scenario, if the engineers don't have the nous to avoid the kinds of HTML injection vulnerabilities that might allow an attacker to inject their own JS code, then, as you say, they are probably also making lots of other mistakes.
A CSP is more valuable in a larger organization, where the codebase is always at risk of being modified by the organization's worst engineer.
It means that you have to use a less strict Content-Security-Policy, which increases your vulnerability to various client-side JS attacks.
do you see any reason that std::optional<uint8_t> max; couldn't just be a regular uint8_t?
It's so that
if (max)
is truthy iff max has been assigned (including the case where it's been assigned zero).I don't know if it's possible for max to be assigned zero in this specific context, or what the correct behavior is if max==0. However, the good thing about this code is that it clearly communicates that the intended check is 'has been assigned to' rather than 'is nonzero'.
The function, for reference:
void WasmShuffleAnalyzer::TryReduceFromMSB(OpIndex input,
const Simd128ShuffleOp& shuffle,
uint8_t lower_limit,
uint8_t upper_limit) {
DemandedBytes demanded = GetDemandedBytes(&shuffle);
std::optional<uint8_t> max = {};
for (unsigned i = 0; i < demanded.bytes(); ++i) {
uint8_t index = shuffle.shuffle[i];
if (index >= lower_limit && index <= upper_limit) {
max = std::max(static_cast<uint8_t>(index % kSimd128Size),
max.value_or(uint8_t{0}));
}
}
if (max) {
// input can be reduced.
TRACE("Can reduce Op %d based upon max used index: %d\n", input.id(),
max.value());
demanded_byte_analysis_.Add(
input, DemandedBytes::LowFromMaxShuffleIndex(max.value()));
}
}He can make that case to the investigating committee. If Farage finds that inconvenient then, well, the easiest way for him to avoid such scrutiny in future is to declare any large amounts of money he receives. Not that difficult, and surely in the public interest to do so.
The standards committee has not yet made any ruling. It would be one thing for Farage to object to a specific ruling by the committee, but to object to the entire concept of a large undeclared personal gift being investigated simply shows a contempt for Parliament.
Investigating Farage for failing to declare donations and gifts is neither “lawfare” nor a plausible means of removing him as an MP. It’s just the Parliamentary Standards Comittee doing its job. No legal penalty is on the cards. The worst the committee can do (and they might not even do it) is make him fight another by election, at which point the decision as to whether or not he remains an MP is entirely up to voters in his constituency. Odds are that Farage would win again, so if this is all part of a grand scheme to oust him, it’s a pretty stupid scheme.
Currently, the person working hardest to ensure that Farage ceases to be an MP is Farage himself, having made the strategic error of trying to pre-empt what he presumes to be the eventual outcome of the committee investigation by calling this farcical by election.
I agree. However, as it's clear that OP is not an AAVE speaker writing a comment in AAVE (https://news.ycombinator.com/item?id=48880115), I thought you were being somewhat facetious.
The system has proved to be quite dynamic, really. The electorate have had real choices over the past 10-15 years. Stay in the EU or don’t. Elect a genuine socialist or a centre-right conservative as Prime Minister. And unpopular or incompetent Prime Ministers have been removed quite promptly.
It’s time to get rid of FPTP, but the real problem seems to be that people just keep voting for the wrong policies.
Sure, but they also teach you to use SAE in contexts where that's expected (like most written work).
A does unethical things to B, therefore I can do unethical things to A.
This clearly doesn't work as an argument if A and B are people. Seems like classic 'two wrongs make a right' reasoning.
This is obviously true to a large extent, but it is also weirdly necessary to explain basic ethical precepts to a surprisingly large number of otherwise well-educated people. Believe it or not, a significant number of people simple don’t know that it’s unethical to, e.g. exfiltrate code or data from a former employer. Making it clear that this is an ethical line may have some value.
“Oh right, all that stuff I did”, as Side Show Bob put it.
It's actually quite hard to say, as there are no official figures on arrests specifically for social media posts in either country. And lot of the specific cases that people point to in the UK (e.g. Lucy Connolly) have parallels in the US:
https://www.theguardian.com/us-news/2017/may/18/facebook-com...
https://www.bbc.co.uk/news/articles/cg7pyjxjxrvo
https://www.nbcnews.com/tech/social-media/federal-agents-mon...
(The figures that the American right give for "arrests for social media posts" in the UK are actually figures from certain police forces for arrests under various pieces of online communication legislation, many of which have nothing to do with social media.)
Many moderate people will respect Count Binface's stand on Ceefax, but what about this extremist nonsense about building an affordable house?
I think the point is that preventative action against crime is unquestionably good to about the same extent that enforcing the law is unquestionably good. In both cases there are exceptions, but few would question that it’s a good thing to do in general.
> the exceptions allowed for by using "in general" as opposed to "always".
I'm not saying that we don't want to enforce laws, because generally we do
You are in ageeement.
Right, but we’re not talking about a worst case scenario where models are trained primarily on their own output. We’re talking about what will happen in the long run, as future models are trained on a realistic mix of content. It’s surely an open question what will happen.
AI isn't going to go away, and AI-generated content isn't going to go away. So while it's an open question the extent to which AI training will be hampered by the proliferation of AI-generated content, I think that the existence of such content is a reality that we'll have to accept, whether you like it or not.
Humans face the same problem. So this at least shouldn't make AI perform worse relative to humans, even if AI slop degrades the performance of both over time.
There's plenty of embedded code in consumer products that doesn't need to meet any special standards like MISRA.
This reminds me a bit of that stuff people used to say about how China could never compete economically with the US until it embraced Western-style democracy, or about how it could copy but not innovate, etc. etc. Europe will continue being Europe, culturally speaking. Some aspects of European work culture will seem off to Americans, and vice versa. But ultimately, if the market for European cloud services grows, companies will adapt and take advantage of this.
Indeed. GPT 5.4 was perfectly happy to help me write some 8051 assembly and integrate it into a weird vendor-specific Eclipse/Keil C51 build system. I would never have had the time or patience to figure it out. Embedded isn’t ready for full vibe coding to the extent that web development is, but it’s certainly not going to be an escape from AI.
We don’t really disagree on any substantial point. However, if we’re going by the F135, that’s an engine that first flew in 2006. If China now has an engine that’s comparable to it it some ways, that means it’s about 20 years behind, give or take.
As you say, militarily speaking, engine tech is just one of many factors. Quite possibly, China would beat the US in a real war just in virtue of being able to manufacture more screws.
I think we're talking slightly at cross purposes. The f119 is an engine that flew in 1997. So while the WS-15 is evidence that China can make modern, well-performing military jet engines, it doesn't show that China has caught up with the West in that particular area.
For civil applications, fuel efficiency is non-negotiable if China is to sell engines outside its domestic market.
The WS-15 is impressive, but it’s on a par with the jet engine technology available to the US military in ~2005. No-one doubts that China can make functioning jet engines. The question is how long the West can maintain the technical lead that it still does have.