Map
Index
Random
Help
Topics
th

Topic: program blocks for control

topics > computer science > programming > Group: program control



Topic:
indentation
Topic:
goto statement
Topic:
local declaration of data
Topic:
notations for brackets
Topic:
procedure valued variables
Topic:
structured flow diagram
Topic:
termination of control unit

Summary

Control acts on blocks of statements, basically the elements of flow diagrams. The necessary control structures are sequence,. selection, and repetition; or sequence with single-entry k-exit loops; or skip a block and repeat a block. Blocks simplify programs by grouping statements under a control context. The danger with these general purpose control structures is that they may not match the reason for the structure. (cbb 5/80)
Subtopic: structure programs as blocks up

Quote: procedure for restructuring irregular algorithms with sequence, 'if', and 'while' [»kapoAA1_1978]
Quote: structured system design only allows sequence, repetition and alternative operations [»orrKT_1977]
Quote: single-entry, single-exit constructs are less desirable if more than control flow is considered [»pratT3_1978]

Subtopic: reducible flow graph up

QuoteRef: ahoAV_1973 ;;941 reducible flow graph if treating intervals also as node end up with one interval (all lang. programs are reducible)
QuoteRef: bohmC5_1966 ;;202 can decompose flow charts into 2 or 3 base diagrams only if the results of discrimination tests can be saved
QuoteRef: bohmC5_1966 ;; proof of three necessary and sufficient flows: repetition (one entry and one exit), selecting, and simple sequence
QuoteRef: frieFL1_1974 ;;12 fundamental control mechanism: single entry k exit loops "n-way decision boxes"

Subtopic: control blocks up

Quote: a Smalltalk block is indicated by square brackets
Quote: a Smalltalk block defers execution until it is sent 'value' or 'value:' [»xlrg8_1981]
Quote: Smalltalk has primitive control messages for selection and conditional iteration [»xlrg8_1981]
Quote: Smalltalk uses 'false' and 'true' objects for control; 'false' ignores 'ifTrue:' and evaluates 'ifFalse:' [»xlrg8_1981]
Quote: example of 'whileTrue:' method in Smalltalk [»xlrg8_1981]
Quote: Pancode segments are delimitated by control statements and indentation [»jonsD8_1987]
Quote: Ruby blocks are closures or anonymous methods; code that is stored along with its context; delimitated by braces or do..end [»thomD1_2001]

Subtopic: block terminator up

Quote: avoid ambiguity by requiring a matching terminator for all nested structures; e.g., 'end if' for 'if' [»paneJF9_2002]

Subtopic: user studies up

Quote: found a nestable conditional construct was easier for novices than a branching conditional construct [»simeME1_1973]
Quote: make more syntactic mistakes in a nesting language and fewer semantic mistakes; dropping 'end' was most frequent [»simeME1_1977a]

Subtopic: sectors for branching up

QuoteRef: buxtJN_1962 ;;195 program divided into sectors-default fail branch is next sector, default succeed branch is next statement

Subtopic: history up

QuoteRef: sammJE_1969 ;;425 goto's: labeled, next rule (*), skip a rule (**), repeat (/), call with pushdown (routine name + label pushed), pushdown inserted under top element (routine ++ label), return by popping (+)
QuoteRef: sammJE_1969 ;;461 block by do (statement list)


Related Topics up

Topic: indentation (25 items)
Topic: goto statement (25 items)
Topic: local declaration of data (11 items)
Topic: notations for brackets (9 items)
Topic: procedure valued variables (34 items)
Topic: structured flow diagram (36 items)
Topic: termination of control unit
(22 items)

Updated barberCB 11/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.