Hacker News new | past | comments | ask | show | jobs | submit | cryptoxchange's comments login

It’s interesting how in a system where one team writes all the code, nuking your clients from orbit when they look at you funny can improve iteration speed.

It’s funny to wake up and read this after falling asleep reading about algebraic effects.

If you squint the right way, this is a kernel that lets a server perform an effect that the client cannot handle.

I feel like this would make code reuse and composition much harder, but provides a much simpler execution model. Definitely the right trade off in a static embedded system. You can always just vendor and modify a task if you need to reuse it.


I don't think this will make reuse much worse even in a general programs, as long as there is a good division between expected errors (file not found) and unexpected (invalid operation code). In fact, there are a lot of ignorable errors in Unix which IMHO should have been raising a fatal signal instead, as this would substantially improve general software quality.

As an example: trying to close() invalid FD is a a non-fatal error which is very often ignored. But it is actually super dangerous, especially in multi-threaded apps: closing wrong fd will harmlessly fail most of the time, but 1% of time you'll close a logging socket or a database lock file or some unrelated IPC connection.. That's how you get unreliable software everyone hates.


I agree with you in general.

However, in your example it’s the kernel that is deciding the request (message) is bad. In Hubris it is the message receiver.

This is a bit contrived, but imagine you’re receiving some stringly typed data from an external source and sending a message to a parsing task that either throws or messages you back with a list of some type t. Maybe it is returning ints and you as the client know that if something isn’t parsable as an int you want it to treat it as a ‘0’ because you’re summing the list. Somewhere else you want to call the same task, but you want strings that can’t be parsed to be treated as ‘1’ unless they can’t be parsed due to overflow (in which case you rethrow) because you’re taking the product.

In some situations it’s natural for the client to know more than the server about how to handle errors. With this nuke from orbit model, there’s some forced coupling between the client and server (mutual agreement over what causes a REPLY_FAULT).


It’s a 2000 line rust embedded systems kernel that doesn’t support adding new tasks at runtime. It is written to go deep in the guts of the 0xide server racks.


The solidity language for smart contracts works like this.


Do you mind sharing which bootcamp?


I know of multiple teams where 50% of the team were nominally HQ2/Virginia employees and 50% were distributed around the country last spring.

Folks on these teams speculated that the Return To Hub push was specifically thought of to meet HQ2 incentives.

None of the distributed employees ended up in Virginia. They all found local teams internally or left Amazon. When high performer leaves a team it’s common for others to leave since it breaks the ice. Lots of these teams then lost local talent to companies with less strict in-office requirements.

Markets are gonna communicate information whether you like it or not.


Every analyst I respect has the same take. This guy even glosses over that it wasn’t a general on a tarmac this time, but a general in a consulate that was extrajudicially murdered. Iran had to respond in a show of force to reestablish deterrence, without escalating the conflict, drawing the US in.

Two kids are on the playground, one has a big brother. They’re both constantly bothering each other. The kid without the big brother has to ride a thin line to not look like he’s trying to kill the other kid (causing the big brother to run over) while still bruising him back enough that the other kid leaves him alone until next week.


Do we know what motivated Israel's assassination of the Iranian general? It seems unwise to resort to assassination unprovoked.


The Iranian general was actively working to help arm Hezbollah, who have been i a low-grade conflict with Israel since October 7th (and before). Think Israel and Hezbollah shooting rockets at each other back and forth for the last 6 months kind of conflict.

Because of this conflict, Israel has ~80k citizens who have had to evacuate their homes because they are too close to the border, and they are afraid to come back with Hezbollah continuing to attack.

See e.g. this random article: https://indianexpress.com/article/explained/explained-global...

> According to a report in The Guardian, Zahedi “commanded units in Lebanon and Syria and was most likely a critical figure in Tehran’s relationship with Hezbollah and Syria’s president, Bashar al-Assad”.

> Arab News quoted a US Department of the Treasury statement from August 3, 2010, saying that Zahedi “also acted as a liaison to Hezbollah and Syrian intelligence services and is reportedly charged with guaranteeing weapons shipments to Hezbollah.”


In terms of international law (for what that's worth), that is a dangerous precedent. Is a US general a legitimate target for Russia now, because we're arming their enemy?

AFAIK, even during the Cold War, when the US was arming Russia's enemies (like Afghanistan) and Russia was arming the US's enemies (like Vietnam), neither nation went so far as to assassinate generals from the other.

We even asked Ukraine not to attack a Russian general.[1]

So, historically, it seems like what Israel did would not generally be considered justified.

(OTOH, we did assassinate Yamamoto, but we were actively at war with Japan.)

1: https://news.ycombinator.com/edit?id=40049703


I mean, the US did assassinate Soleimani, an Iranian general, in 2020: https://en.wikipedia.org/wiki/Assassination_of_Qasem_Soleima... . So I wouldn't exactly call this a precedent.

But yes, this is a complicated issue.


That link does say:

> Some experts, including the United Nations special rapporteur on extrajudicial, summary or arbitrary executions, considered the assassination [of Soleimani] as a likely violation of international law as well as U.S. domestic laws.


Yeah, I was only pointing out that it wasn't a precedent.

(And btw, imagine Iran having then sent 150 missiles aimed at the US. Seems to me like the US would respond.)


Is there any gentlemanlyness at play in those examples or is it just all tactics.


Easy. They’re losing the Gaza war. Yemen’s blockade and full militarization is crushing Israel’s economy. Bibi is out of a job and possibly his freedom if war stops.

Time for a trump card: escalation of the conflict will keep the extremists happy and keep the hostilities going for possibly years. Bibi’s best choice.


They are losing the Gaza justification. Obviously they have obliterated Gaza and Gaza had no way to defend itself.


HAMAS has retaken Northern Gaza. The area is depopulated but not safe for IDF. Mission Failed (unless the mission was to ethnically cleanse in the first place).


the current regime in Iran has not thought much of the "special" status of embassies historically.

I tend to agree the strikes on embassies/consulates is not a great precedent, but it's hard to think of a less sympathetic victim.


This is the Liskov Substitution Principle in a hat and trench coat.


Introduction to the Theory of Computation by Michael Sipser


Every time I’ve checked over the last decade (including today), you can buy a mac mini that supports the latest macOS for under $250 on ebay. You can also test your app using github actions for free if your use case fits in the free tier.

There is no way to do this for an IBM z16, which is the kind of vendor lock in that people are saying Apple doesn’t have.


Which is why the US is will leave Taiwan hanging. Taiwan sees what happened to Ukraine, the writing is on the wall. Hong Kong style gradual reunification will happen in the next 10 years.


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

Search: