Kirby: >Per the ALGOL Conclusions paper (link below), the abstractions of "block" and "compound statement" got formalized with that ALGOL 60 "report".
One can pretty easily regard those as straight-on surface manifestations of the underlying abstraction of a context-free grammar. Hansen's claim is that mathematical abstractions don't underlie programming language advances.
"The 'block structure' aspect that context-free grammars capture is so fundamental to grammar that the terms syntax and grammar are often identified with context-free grammar rules, especially in computer science." http://en.wikipedia.org/wiki/Context-free_grammar
Kirby: >I'd say the mathematical concept of "a function" plays a similar integrating role in helping us think more reliably in mathematical terms.
Well, yes, but I'd say the arguments about side-effects are more than just religion -- the "side effects" issue is precisely about how one reasons about a program.