de en es fr nl pl pt sv zh

abstraction

Chess invariants

Murat

Chess is a lot trickier than it looks. It has so many rules: castling, en passant, pawn promotion, pinning, the discovered check, and the deadlock case of stalemate.It is a concurrent system, but with a very specific kind of concurrency: interleaved execution. More specifically, taking turns:...

The Two Abstractions of System Design: Hide or Reduce

Murat

When talking about TLA+, I keep referring to "abstraction" as the most important thing to learn. And it is about the hardest to learn as well.But a contradiction has been bugging me. Aren't CS people already supposed to be good at abstraction? Isn't abstraction supposed to be at the root of OS,...