- Two meanings of systems programming
- Systems programmers can have nice things
-
https://robert.ocallahan.org/2016/08/random-thoughts-on-rust-cratesio-and.html
- Goals and priorities for C++
-
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2137r0.html
- Boundaries
- Plugin diagram
-
https://www.tedinski.com/2018/01/30/the-one-ring-problem-abstraction-and-power.html
- Data, ADT, Object
-
https://www.tedinski.com/2018/02/27/the-expression-problem.html
- John Carmack on inlined code
-
http://number-none.com/blow/john_carmack_on_inlined_code.html
- A few billon lines of code later
-
https://cacm.acm.org/magazines/2010/2/69354-a-few-billion-lines-of-code-later/abstract#
- Simple testing can prevent most critical failures
-
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
- The Error Model
- Talks that changed the way I think about programming
-
http://www.opowell.com/post/talks-that-changed-the-way-i-think-about-programming/
- Why rewriting hotspots in a faster language doesn’t work
-
https://code.visualstudio.com/blogs/2018/03/23/text-buffer-reimplementation, also
The right tool for the job is often the tool you are already using —adding new tools has a higher cost than many people appreciate.
- Programming people
- Python spends almost all of its time in the C runtime
- Rider architecture
-
https://www.codemag.com/Article/1811091/Building-a-.NET-IDE-with-JetBrains-Rider
- System programming values
- Midlayer mistake
- Technology from the past come to save the future from itself
- Not Rocket Science Rule
- Why C++ Sails When the Vasa Sank
- Composition of Unsafe
-
https://smallcultfollowing.com/babysteps/blog/2016/10/02/observational-equivalence-and-unsafe-code/
- Generics Dilemma
- A Catalogue of Optimizing Transformations
-
https://www.clear.rice.edu/comp512/Lectures/Papers/1971-allen-catalog.pdf
- Static Program Analysis
- Accurate mental model for Rust’s reference types
-
https://docs.rs/dtolnay/0.0.9/dtolnay/macro._02__reference_types.html
- Don’t write bugs
-
https://www.teamten.com/lawrence/programming/dont-write-bugs.html
- Don’t use
_
patterns - What Is The Minimal Set Of Optimizations Needed For Zero-Cost Abstraction?
-
https://robert.ocallahan.org/2020/08/what-is-minimal-set-of-optimizations.html
- Expect Tests
-
https://blog.janestreet.com/using-ascii-waveforms-to-test-hardware-designs/
- What Every C Programmer Should Know About UB
-
https://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html
- Build a Mountain
- Precise Profiling via rdpmc
- JSONMutexDB
- Swift Is Undecidable
-
https://forums.swift.org/t/swift-type-checking-is-undecidable/39024
- Don Syme of F# on typeclasses
- Outlined Containers
- Your ABI is Probably Wrong