Date: Mar 2, 2014 6:13 PM
Author: Joe Niederberger
Subject: Re: Structured Programming

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.

Cheers,
Joe N