Readit News logoReadit News
WallWextra commented on Durable execution should be lightweight   dbos.dev/blog/what-is-lig... · Posted by u/KraftyOne
peterkelly · a year ago
Durable execution is best done at the level of a language implementation, not as a library.

A workflow engine I recently built provided an interpreter for a Scheme-based language that, for each blocking operation, took a snapshot of the interpreter state (heap + stack) and persisted that to a database. Each time an operation completes (which could be after hours/days/weeks), the interpreter state is restored from the database and execution proceeds from the point at which it was previously suspended. The interpreter supports concurrency, allowing multiple blocking operations to be in progress at the same time, so the work to be done after the completion of one can proceed even while others remain blocked.

The advantage of doing this at the language level is that persistence becomes transparent to the programmer. No decorators are needed; every function and expression inherently has all the properties of a "step" as described here. Deterministic execution can be provided if needed. And if there's a need to call out to external code, it is possible to expose Python functions as Scheme built-ins that can be invoked from the interpreter either synchronously or asynchronously.

I see a lot of workflow engines released that almost get to the point of being like a traditional programming language interpreter but not quite, exposing the structure of the workflow using a DAG with explicit nodes/edges, or (in the case of DBOS) as decorators. While I think this is ok for some applications, I really believe the "workflow as a programming language" perspective deserves more attention.

There's a lot of really interesting work that's been done over the years on persistent systems, and especially orthogonal persistence, but sadly this has mostly remained confined to the research literature. Two real-world systems that do implement persistence at the language level are Ethereum and Smalltalk; also some of the older Lisp-based systems provided similar functionality. I think there's a lot more value waiting to be mined from these past efforts.

WallWextra · a year ago
Racket's web framework has a feature to serialize continuations and restore them, which I instantly thought of the first time I saw durable execution.
WallWextra commented on Users say T-Mobile must pay for killing "lifetime" price lock   arstechnica.com/tech-poli... · Posted by u/rntn
cameldrv · a year ago
Here was their old guarantee: "Our products are guaranteed to give 100% satisfaction in every way. Return anything purchased from us at any time if it proves otherwise. We do not want you to have anything from L.L. Bean that is not completely satisfactory."
WallWextra · a year ago
Are you not satisfied by boots which lasted 20 years?
WallWextra commented on Ask HN: Who has moved from the U.S. to Europe?    · Posted by u/feraligators
jfk13 · 4 years ago
> Pay and opportunities are infinitely better

...if you're lucky enough to be among the privileged.

WallWextra · 4 years ago
If you're not lucky enough to be among the privileged, moving to Europe is impossible unless you have inherited citizenship (which is itself another kind of privilege).
WallWextra commented on Ask HN: Who has moved from the U.S. to Europe?    · Posted by u/feraligators
WallWextra · 4 years ago
I recently moved from the US to Berlin. I plan to return to the US.

Pros of Berlin:

- Good transport

- Bikeable

- Safe

- Cheaper than the big coastal cities in the US, with lower rent.

- Good clubbing (not my thing)

Cons of Berlin:

- Healthcare is inconvenient. Doctor's offices won't pick up the phone, and won't leave you on hold. You just have to go in person. Providers all work in small doctor-owned practices, and you get a referral runaround with huge wait times.

- The food in Germany is terrible. The quality of produce and other ingredients is very bad, and the restaurants are nothing special. One notable bright spot is the availability of vegetarian and vegan food. Also falafel and doner.

- The salaries are shockingly low. Really ask yourself if all the comforts of Europe are worth cutting your salary in 2 or 3, and that's before...

- Taxes. The top tax rate here is in the low-40s, comparable to the US, but unlike the US, the top tax bracket starts below $65k.

- Europe has an impending demographic crisis, and the social safety net they fund by plundering your paycheck probably won't be there for you when you retire.

- Stores in general suck. They have fewer, and worse products.

- Everyone still smokes here.

WallWextra commented on What’s Wrong with “Multiplication Is Repeated Addition”? (2008)   denisegaskins.com/2008/07... · Posted by u/harperlee
yakubin · 5 years ago
> You can definitely see multiplication as repeated addition.

Only for rational numbers. Doesn't work for real and complex numbers.

> It's even a useful thing to do, how else would you define multiplication?

Axiomatically, not algorithmically.

WallWextra · 5 years ago
If you define the reals axiomatically, you still need an existence proof. Which will involve addition and multiplication algorithms.
WallWextra commented on Half Doses of Moderna Vaccine Produce Neutralizing Antibodies   marginalrevolution.com/ma... · Posted by u/elsewhen
xiphias2 · 5 years ago
Hundreds of millions of people would pay 5x the current price to get the vaccine faster. I feel like the policy of governments getting a monopoly on vaccine distribution is stopping companies in competing for speed of vaccine production and building more factories.
WallWextra · 5 years ago
There aren't many people with the expertise to produce the vaccine, and they're all already working on the existing production lines. The lead times are just inherently long here; takes months to start up a production line.
WallWextra commented on Who wants to live for ever? Ageing can be cured–and, in part, it soon will be   economist.com/books-and-a... · Posted by u/jkuria
rwmj · 5 years ago
Come on The Economist, no mention at all of the economic implications of this? Of people getting older and older and richer and richer without end, hoarding all the wealth and power, and young people with flexible minds being very rare indeed.
WallWextra · 5 years ago
Sounds no worse than people dying, and their children inheriting their assets with a stepped-up cost basis.
WallWextra commented on Web Programming with Continuations (2002) [pdf]   thelackthereof.org/docs/l... · Posted by u/dmux
slaymaker1907 · 7 years ago
One of the Racket tutorials actually goes into an example of using continuations to save application state for a web app (https://docs.racket-lang.org/more/index.html#%28part._.Conti...).

One issue with this approach is that it doesn't really scale easily beyond a single server. You need something like the JVM which allows for closures to be sent between machines sharing the same code base. Plus, even in the JVM case, you must have the class files required by the closure available on the JVM which tries to run it.

I really think it is a better idea to just use a database and pass state explicitly rather than trying to do something fancy with continuations. However, continuations can be extremely useful for making the server asynchronous without making it look asynchronous.

While Promises are nice, I think they are severely flawed in that they must "infect" any code which tries to use them. For instance, I was dealing with some Typescript compiler interfaces a few years back which expected to be able to read files synchronously, something which does not hold true if you try to emulate a filesystem in the browser using web requests. With true continuations, it would be possible to simply pause this computation transparently and then resume it once the request was complete.

WallWextra · 7 years ago
The racket web framework has an option to serialize the entire continuation for he client to send back to you. Pretty intense.
WallWextra commented on YTMND is down for temporary maintenance   resetera.com/threads/look... · Posted by u/fredley
kyllo · 7 years ago
I've heard that dril on Twitter is actually Richard "Lowtax" Kyanka from SA, can anyone confirm/deny?

https://twitter.com/dril

WallWextra · 7 years ago
dril was doxed a couple of years ago. You can google around for his real name, which is not Richard Kyanka.
WallWextra commented on Ask HN: Do you like/use Reddit's redesign?    · Posted by u/return0
WallWextra · 7 years ago
I would like it quite a lot if it worked properly, but there are some pretty brutal bugs. I have some amount of faith that they'll be fixed, though.

u/WallWextra

KarmaCake day541October 7, 2014View Original