Topic: indentation

topics > computer science > programming > Group: programming notation

program blocks for control
programming style
structured editors


Indentation provides a visual representation of scope. It indicates the context for elements by arranging a list of items vertically embedded under the context. Repeated indentation into columns may specify a set or an element of a set. Indentation may be difficult to preserve when publishing programs, defining new print formats, inserting text, and breaking text across pages. Level numbers can provide a numeric equivalent to indentation while editing aids can ease re-indentation. Indentation works best when its scope is limited. (cbb 5/80)

Experimental evidence for indentation is mixed. (cbb 12/92)

Subtopic: scope by indentation up

Quote: use colon/indentation instead of begin..end [»pembS1_1987]
Quote: the tab character is too device-dependent; use a '4-spaces' character for program layout [»stoyJE3_1972]
Quote: Pancode segments are delimitated by control statements and indentation [»jonsD8_1987]
Quote: use statement indentation to specify block structure; a control structure's scope consists of statements with the same indentation [»leinDW5_1980]
QuoteRef: buxtJN_1962 ;;195 scope by indentation
QuoteRef: morrJH8_1972 ;;758 can replace () and ":" by tabbing and cr's
QuoteRef: reynCF3_1971 ;;218 uses indentation to produce a context
QuoteRef: schoDV9_1966 ;;7 uses indentation for scoping
QuoteRef: weinGM8_1975 ;;37 uses indentation for sub-programs and beginning of statement
QuoteRef: ziegEW4_1974 ;;128 "The scope of a clause is denoted by indentation
QuoteRef: cbb_1973 ;;3/20/75 horizontal entries a set, vertical a list, and embedding entry definition
QuoteRef: ledgHF7_1977 ;;103 if expression CR tab THEN CR tabtab statement CR tab ELSE CR tabtab...
QuoteRef: schoDV9_1966 ;;"I have been writing programs in outline form, using conventions of indentation to indicate the flow of control
QuoteRef: buxtJN_1962 ;;195 test chains: all at same indentation, implied and, explicitly or in margin. can have regular statements interspersed. arranged vertically.

Subtopic: studies of indentation up

Quote: indentation made a statistically insignificant difference in program comprehension [»keslTE11_1984]
Quote: programming improved by indentation, comments, mnemonic names; but not by structured programming [»pariG_1980]
Quote: a NEST language with automatic indenting redundantly specifies sequence information; should be better than a JUMP language [»simeME1_1977a]
Quote: make more syntactic mistakes in a nesting language and fewer semantic mistakes; dropping 'end' was most frequent [»simeME1_1977a]

Subtopic: editing with indentation up

Quote: the Z editor automatically indents after a 'newline'; can be overridden [»woodSR6_1981]
Quote: Z can elide statements which are indented too far; like an outline [»woodSR6_1981]

Subtopic: indentation styles up

Quote: all programming styles indent the body of structured constructs [»leavGT2_1984]
QuoteRef: neelPM_1973 ;;120 indentation rules for control structures

Subtopic: problems with indentation up

QuoteRef: landPJ3_1966 ;;164 Floyd (discussion): problem with indentation going from one page to another
QuoteRef: cbb_1973 ;;12/4/75 problem with indentation is to add something must change all indentation
QuoteRef: landPJ3_1966 ;;164 Naur (discuss): indentation syntax changing print formats eg publication

Related Topics up

Topic: program blocks for control (20 items)
Topic: programming style (47 items)
Topic: structured editors
(35 items)

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