Live data from Hacker News

Systems Software Research is Irrelevant (2000) [pdf]

herpolhode.com

51–60 of 73 posts

Re: Systems Software Research is Irrelevant (2000) [pdf]

#51
post #49
post #25

Earlier quoted context omitted.

Systems research is about technology not about empowering so and so.

as counter example to your premise, icd cite projects like Node-RED or Yahoo Pipes. These are little micro-os like systems, environmemts for cobbling together computing. They're higher level than what we might often think of, but they are easily im domain to me at least. And they're definitely about empowering! It's a fault that more systems research isnt about finding more userhfaving abstractions. Naked Objects env…

Users don't attend USENIX, IEEE or ACM conferences.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#52
post #46
post #42

Since Rob Pike wrote this note in 2000, there have been many commercially important advances in systems software: - iOS and Android: Power-efficient mobile systems, wakelocks, etc. - Docker, Borg and Kubernetes: Container isolation, cluster orchestrators. - Modern browser environments, with high degrees of isolation. - Fast JavaScript runtimes and specialized JITs. - WASM. - Ruby and metaprogramming, which rose to co…

> Admittedly, much of the most important implementation work happened in big tech companies, or occasionally startups. Not in academia > - Rust, which successfully applied a lot of lesser-appreciated academic ideas including affine types. There's some scepticism going round about a model of technological innovation where academics invent an idea and engineers implement it. While I accept that affine types were known…

Graydon has forgotten more about PLT than most of us will ever know. (And several of the folks who came after Graydon have PhDs…)

Early Rust didn’t have some of the things it had today, but we used to keep a list of papers that Rust either was inspired by or implemented the ideas from on the website, even if it was incomplete.

I also don’t believe that smart pointers in C++ count as affine? Move semantics in C++ work quite differently than in Rust. I could be wrong about that though, but given the whole copy by default thing, I’m not entirely sure that that counts. It might though.

Oh, and in the earliest days, literally Rust’s introduction inside of Mozilla, it was described as “ideas from the past, come to save the future.” Explicitly built on older PLT ideas that hadn’t made it mainstream yet. Rust may feel cutting edge for industry but it’s basically the opposite of avant garde theoretically speaking.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#53
post #42

Since Rob Pike wrote this note in 2000, there have been many commercially important advances in systems software: - iOS and Android: Power-efficient mobile systems, wakelocks, etc. - Docker, Borg and Kubernetes: Container isolation, cluster orchestrators. - Modern browser environments, with high degrees of isolation. - Fast JavaScript runtimes and specialized JITs. - WASM. - Ruby and metaprogramming, which rose to co…

There’s also cloud scale OS work that was done for AWS and Azure. And moving Linux to embedded and IoT class devices.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#54
post #46

Earlier quoted context omitted.

> Admittedly, much of the most important implementation work happened in big tech companies, or occasionally startups. Not in academia > - Rust, which successfully applied a lot of lesser-appreciated academic ideas including affine types. There's some scepticism going round about a model of technological innovation where academics invent an idea and engineers implement it. While I accept that affine types were known…

Graydon has forgotten more about PLT than most of us will ever know. (And several of the folks who came after Graydon have PhDs…) Early Rust didn’t have some of the things it had today, but we used to keep a list of papers that Rust either was inspired by or implemented the ideas from on the website, even if it was incomplete. I also don’t believe that smart pointers in C++ count as affine? Move semantics in C++ work…

unique_ptr counts as a affine type, the linearity is enforced at compile time. (even if access safety is not)

Re: Systems Software Research is Irrelevant (2000) [pdf]

#55
post #48
post #46

Earlier quoted context omitted.

> Admittedly, much of the most important implementation work happened in big tech companies, or occasionally startups. Not in academia > - Rust, which successfully applied a lot of lesser-appreciated academic ideas including affine types. There's some scepticism going round about a model of technological innovation where academics invent an idea and engineers implement it. While I accept that affine types were known…

> There's some scepticism going round about a model of technological innovation where academics invent an idea and engineers implement it. While I accept that affine types were known to academics, I recall a precursor to them existed in the form of C++ unique pointers. There feels like an implicit value judgment here, that the work of "academics" isn't needed because "engineers" figured it out themselves. > I'm wonde…

they are "fuzzy sets" ; in the actual world there are certainly differences, if not absolute boundaries

Re: Systems Software Research is Irrelevant (2000) [pdf]

#57
post #54

Earlier quoted context omitted.

Graydon has forgotten more about PLT than most of us will ever know. (And several of the folks who came after Graydon have PhDs…) Early Rust didn’t have some of the things it had today, but we used to keep a list of papers that Rust either was inspired by or implemented the ideas from on the website, even if it was incomplete. I also don’t believe that smart pointers in C++ count as affine? Move semantics in C++ work…

unique_ptr counts as a affine type, the linearity is enforced at compile time. (even if access safety is not)

Yeah, thinking about it I would agree with you. I was thinking that it being copyable so easily would be disqualifying, but I wouldn’t say the same about Clone in Rust and it’s not really about explicitness, anyway. Thanks.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#58
The scale of compute changed:

- Mobile (iOS and Android)

- "The cloud": the systems became multi-computer networks. (Aurora, Mesos, Kubernetes, etc.)

- Web Browser as a platform (and associated technologies, such as Node)

The scale of the problem changed and shifted. Single machine scheduling is not as interesting, since large scale computing is about that, scale (even at the cost of some efficiency). You could say that Amazon EC2 is a cloud operating system (thought as all the separate subsystems that allow a mostly frictionless experience).

Mobile shifted the focus to security and energy consumption.

And the Web changed what a system platform is. The browser is a system abstraction, to the point where things like Chromebooks are viable. Code is now portable, run anywhere.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#59
post #42

Since Rob Pike wrote this note in 2000, there have been many commercially important advances in systems software: - iOS and Android: Power-efficient mobile systems, wakelocks, etc. - Docker, Borg and Kubernetes: Container isolation, cluster orchestrators. - Modern browser environments, with high degrees of isolation. - Fast JavaScript runtimes and specialized JITs. - WASM. - Ruby and metaprogramming, which rose to co…

Rob was simply wrong. All his thinking was formed by the explosion of systems research around UNIX from the 70s to the 80s which was extremely productive. But research definitely didn't end then. It just transitioned to another dimension.

Re: Systems Software Research is Irrelevant (2000) [pdf]

#60
post #14

Earlier quoted context omitted.

I agree with you, but at the same time, I think it’s easy to dismiss this whole line of thought as quacky. It’s very hard to argue with tables and plots. Economics has a lot of mathematical work for similar “hard science” reasons.

It's not how academia is structured, but backing up criticism with a protoype of the alternative IMO completely solves the credability problem. From the vantage of the social sciences, where one can only dream of running prototype towns and cities, this is a gift and systems researchers should consider themselves lucky.

What if there are many alternatives? Each implementation would be a challenge to optimize fairly. You’d be forced to have some open competition to make it convincing.
Post reply on HN