Structured Programming Paradigm

on 2019-06-12 in note about cs programming mindmap ~1 min read

What can cause too much use of "goto statements"

There was the time when computer programs were so much long and unstructured that some times just a few people managed to logically navigate source code in huge software projects. Having low-level programming languages, programmers used various equivalents of "goto statements" for conditional branching that often led to decreasing readability and difficulties in keeping a logical context, especially jumping too far to another subroutine.


A few things happened on the way to a solution that eventually appeared in the form of Structured Programming Paradigm. In 1966, Corrado Böhm and Guiseppe Jacopini proved a theorem that any computer program which might be represented as a flow diagram can be rewritten using only 3 control structures (sequence, selection, iteration).


In 1968, Edsger W. Dijkstra published the influential article "Go To Statement Considered Harmful" where he pointed out that using too many goto statements has a negative effect on the readability and understanding of computer programs. Though, his intention was, unfortunately, misunderstood and misused by almost complete abandoning of using "goto" in high-level programming languages, even at the cost of less readable and vague code.


As a result of working on the improvement of the ALGOL, Niklaus Wirth designed a new imperative programming language, Pascal, which was released in 1970. It was widely used for teaching students the Structured Programming Design for a few decades since then.


MindMap

Other formats: PDF, TXT, MindMap

This is my personal blog. All ideas, opinions, examples, and other information that can be found here are my own and belong entirely to me. This is the result of my personal efforts and activities at my free time. It doesn't relate to any professional work I've done and doesn't have correlations with any companies I worked for, I'm currently working, or will work in the future.