"Thinking is not the ability to manipulate language; it's the ability to manipulate concepts." #readingToday
_I believe that the best way to get better programs is to teach programmers how to think better. Thinking is not the ability to manipulate language; it's the ability to manipulate concepts. Computer science should be about concepts, not languages. But how does one teach concepts without getting distracted by the language in which those concepts are expressed? My answer is to use the same language as every other branch of science and engineering—namely, mathematics. But how should that be done in practice? This note represents a small step towards an answer. It doesn't discuss how to teach computer science; it simply addresses the preliminary question of what is computation. _