Program indentation and comprehensibility

  title={Program indentation and comprehensibility},
  author={Richard J. Miara and Joyce A. Musselman and Juan A. Navarro and Ben Shneiderman},
  journal={Commun. ACM},
The consensus in the programming community is that indentation aids program comprehension, although many studies do not back this up. We tested program comprehension on a Pascal program. Two styles of indentation were used--blocked and nonblocked--in addition to four passible levels of indentation (0, 2, 4, 6 spaces). Both experienced and novice subjects were used. Although the blocking style made no difference, the level of identation had a significant effect on program comprehension. (2--4… 

Tables from this paper

The Effect of Indentation and white Space on Program Retention

Advocates of structured programming make strong claims for the value of indentation and white space. dence supporting this position is confusing. Weissman (1974) used advanced computer science

Indentation: A Simple Matter of Style or Support for Program Comprehension?

Most modern programming language style guides suggest a specific indentation depth to convey the structure of code (e.g., two or four spaces). In this study, we examine the effect of indentation

Indentation: Simply a Matter of Style or Support for Program Comprehension?

This paper presents empirical evidence for the suggested level of indentation made by many style guides, and modernization of the original experiment design is a promising starting point for future studies in this field.

The influence of color on program readability and comprehensibility

Readability and comprehensibility are among the most important attributes of a program. A program that is easy to read and understand is easier to test, maintain, and modify. Many factors affect

The Effectiveness of Control Structure Diagrams in Source Code Comprehension Activities

Recently, the first two in a series of planned comprehension experiments were performed to measure the effect of the control structure diagram (CSD) on program comprehensibility. Upper- and

Typographic style is more than cosmetic

Fourexperiments demonstrate that the typographic style principles embodied in the book format significantly aid program comprehension and reduce maintenance effort.

Tool for making programs more readable

This work proposes an automatic formatting programs for responding to the need to provide a model of the presentation of the Pascal program which facilites the correction and make the program readable by other programers.

Automatic assessment of students ’ program codes

Nowadays, there are several programming languages, which are found to be difficult for a novice programmer to understand. According to Robins [RRR03], students have often difficulties in building

A Comparative Evaluation of Program Comprehension Measures

The results indicate that the measures based on mental simulation are the most reliable, followed by maintenance based tasks, and subjective measures are cheap and worth using (along with another measure).

Enhancing program readability and comprehensibility with tools for program visualization

  • R. Baecker
  • Computer Science, Art
    Proceedings. [1989] 11th International Conference on Software Engineering
  • 1988
A design for the effective presentation of source text in the C programming language using high-quality digital typography and a processor which implements the design is given.



Indentation, documentation and programmer comprehension

The purpose of this study was to examine experimentally the relationship between documentation, indentation and the comprehension of computer programs.

Indenting for the compiler

A simple indentation rule, indent statements from the control statement they belong to, is sufficient to express a program's block structure without the use of compound statements or closing keywords, thus reducing effort and eliminating a potential source of errors.

Experimental Investigations of Computer Program Debugging and Modification

The results of human factor experiments in programming have led to a cognitive model of programmer behavior which distinguishes between the hierarchically structured, meaningfully acquired semantic knowledge and the rotely memorized syntactic knowledge.

A technique for making structured programs more readable

A new technique will be discussed which will use automatically generated lines to connect separated parts of control structures to help a reader comprehend the logical structure of programs.

On the formatting of Pascal programs

This paper presents simply a suggested formatting approach, with vague arguments for the adoption of these formatting rules, for block structured languages such as Algol or Simula.

An automatic formatting program for PASCAL

A set of useful formatting standards for PASCAL are attempted, and a program that has been thoughtfully formatted according to such a standard is said to be prettyprinted.

Elements of Programming Style

These notes provide guidelines for internal program documentation and style for student programmers, geared mainly for a block structured language such as Pascal or C, most of the points discussed are applicable to any programming language.

Prettyprinting structured programs with connector lines

Prettyprir:tirg structured programs is an irnportar t method for increasing a program's readeblity by connecting opening and closing keywords with semicolons everywhere, and some people find it hard to accept semicolon s in this new role, but I am all forSemicolons lib.

Psychological complexity of computer programs: an experimental methodology

A series of experiments which have been conducted with the aim of establishing a suitable experimental methodology to measure those factors which make programs difficult to understand and maintain.

NEATER2: a PL/I source statement reformatter

NEATER2 accepts a PL/I source program and operates on it to produce a reformatted version and a number of options are available to give the user full control over the output format and to maximize the utility of NEATER2 as an aid during the early stages of development of a PL-I source deck.