Links 2020-05-04
On programming …
- A Branchless UTF-8 Decoder – Chris Wellons
This week I took a crack at writing a branchless UTF-8 decoder: a function that decodes a single UTF-8 code point from a byte stream without any if statements, loops, short-circuit operators, or other sorts of conditional jumps.
- Notes on structured concurrency, or: Go statement considered harmful — njs blog
Every concurrency API needs a way to run code concurrently. Here’s some examples of what that looks like using different APIs:
- Some reasons for Go to not make system calls through the standard C library – Chris Siebenmann
On the surface this makes Go sound unreasonable, and you might ask why it can’t just make Unix system calls through the system’s C library the way pretty much every other Unix language does.
- An analysis of performance evolution of Linux’s core operations – the morning paper
This paper presents an analysis of how Linux’s performance has evolved over the past seven years… To our surprise, the study shows that the performance of many core operations has worsened or fluctuated significantly over the years.
- Git from the inside out – Mary Rose Cook
The essay focuses on the graph structure that underpins Git and the way the properties of this graph dictate Git’s behavior.
- A half-hour to learn Rust, amos
I’ll try to go through as many Rust snippets as I can, and explain what the keywords and symbols they contain mean.