The "bottom" of computer science would be mathematically explaining what it means to compute, and building up to the abstraction of a Turing machine, and eventually getting to a concrete implementation of what we call programming and code. This book has code on page 2 - but code is nowhere near the bottom.
Specifically "mathematically explaining what it means to compute, and building up to the abstraction of a Turing machine"
Thanks
It's pretty much "computation theory for the everyday programmer". It uses Ruby to implement things like Turing Machines and the lambda calculus. Extremely accessible, and a lot of fun.
Baffingly enough: All this theory is easily understood with 7th-grade math.
Approaching from some specific piece of engineering is surely top-down.
One could argue it's from the very bottom up, not much practicum lies in that text.
He proposes a file clerk that gets progressively dumber and faster until they get so dumb that they can be simulated by an electronic circuit.
But I guess that would be computer science from the top down.