• 1 Post
  • 84 Comments
Joined 1 year ago
cake
Cake day: June 20th, 2023

help-circle




  • It sounds like he uses Rust and has some issues with it. IDK about green threads but Ada has had tasks (implemented in gnat with posix threads) from the beginning. If you pin a CPU core to a task and don’t use gc in it, that can handle your realtime stuff. Or these days, it’s becoming more common to use an fpga for cycle level timing control.

    Note that traditional Forth cooperative multitaskers used a few hundred bytes of code or even less. This stuff doesn’t have to be bloaty.

    Added: I’ve also seen a Boehm-style conservative GC in a few hundred lines of Forth. Using something like that in Rust could work nicely for lots of things.

    Anyway, you can have a soft realtime gc with pauses in the low milliseconds (Erlang has that). That’s OOMs lower than most internet ping times, so plenty fast enough for web servers. Which are all full of JS bloat now regardless.








  • Neat that looks interesting. There’s a similar Haskell idiom called session types. I have a bit of reservation about whether one can easily use Rust traits to mark out the permissible state sets that an operation can take, but that’s because I don’t know Rust at all. I do remember doing a hacky thing with TypeLits in Haskell to handle that. Basically you can have numbers in the type signatures and do some limited arithmetic with them at type level. I’d be interested to know if that is doable in Rust.


  • Things just weren’t like that then. Otherwise all PC peripherals would be locked down too, so no device drivers. That was already a problem with cheap windows crap. But the better stuff was documented.

    Maybe there would be no Linux but that isn’t as bad as it sounds, since BSD Unix was being pried loose at the time, plus there were other kernels that had potential. And the consumer PCs we use now weren’t really foreseen. We expected to run on workstation class hardware that was more serious (though more expensive) than PCs were at the time. They would have stayed less locked down.

    Asded: PCs were an interesting target because there was a de facto open hardware standard, making the “PC compatible” industry possible. So again, without that, we would have used different hardware.






  • Can anyone explain why Wayland exists or who cares about it? X has been around forever, it sucks but it works and everything supports it. Alternatives like NeWS came around that were radically better, but were too soon or relied too much on corporate support, so they faded. The GNU project originally intended to write its own thing, but settled for using X. Now there’s Wayland though, which seems like a slight improvement over X, but mostly kind of a lateral move.

    If you’re going to replace X, why not do something a lot better? If not actual NeWS, then something that incorporates some of its ideas. I think Squeak was like that but I don’t know much about it.