4 comments

[ 4.1 ms ] story [ 21.3 ms ] thread
Hey all, this is my somewhat silly-titled blog post about how we model interrupt handlers as threads in embedded rust, and how that allows us to leverage the same Sync and Send compile time checks to ensure interrupt-safety of data.

Happy to answer any questions!

You know I do all my Mastodon posting through my agent YOShInOn and I was thinking about putting in a filter to enforce me writing

https://simple.wikipedia.org/wiki/E_Prime

but never got around to it. This one got me thinking about it again.

I don't think that filter would like my post at all, if it considers "is" as part of "to be".
That’s the point. A = B is frequently not true “orange is the new black”, “Kier Starmer is a fascist” (sci-fi writer Charlie Stross), etc. General semantics practitioners would frequently reject A = A (e.g. me as of today and me as of tomorrow are not quite the same) See

https://en.wikipedia.org/wiki/The_World_of_Null-A

In your case, people get terribly confused about things like threads, fibers, processes, continuations, coroutine and all these other mechanisms that are frequently used by the OS and libraries to cover up interrupts. As there is a lot of confusion, equations that are not 100% true are part of the problem and not the solution, at least that’s my hot take.

(I imagine feeling exhausted when I imagine rewriting that comment in E-Prime, however!)