Hacker News new | past | comments | ask | show | jobs | submit login
Hints for Computer System Design (1983) (microsoft.com)
69 points by martincmartin on July 19, 2016 | hide | past | favorite | 9 comments



Interesting to see the doc filled with relevant quotes. Makes the document look really polished. Which is a nice change, considering most articles these days seem to be written as if they are for the tabloids.


IMHO, this is the most useful systems paper ever written. Rump kernels were designed on the listed principles. (if the implementation managed to follow the principles is of course another matter ...)


“Cedar goes farther and does not keep track of which local variables contain pointers; instead, it assumes that they all do. This means that an integer that happens to contain the address of an object which is no longer referenced will keep that object from being freed. Measurements show that less than 1% of the storage is incorrectly retained [45].”

Might this explain/justify the GC bug that 32-bit Go once had[1]?

[1] https://groups.google.com/forum/m/#!topic/golang-nuts/qxlxu5...


Well, conservative GC is known for this kind of problems, but the overhead is supposed to be generally bounded. I'm not sure about pathological cases; Go may have hit one back then. It highly depends on the circumstances. For example, PLT Scheme used to use the (conservative) Boehm GC in the past, and they've since replaced it, but I don't recall any such problem while they were using it (aside from the somewhat larger but bounded memory usage).



This is really well written. Obviously outdated in some areas but still high quality.


Just look at the author name. One of the Great Old Ones himself! We're not worthy.


> microsoft.com

Ehm, seriously?

> Butler W. Lampson

Oh, ok!


I hear they based MS Bob off the principles outlined in this white paper




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

Search: