The preprint is devoted to the analysis of the main methods of program decomposition supported by modern programming languages and systems. The authors analyze specific features of a technique of isolation and presenting procedures, functions, macros, fragments and other program components within the framework of different programming paradigms and individual methods of program processing during compilation. The focus is on methods of separating the presentation of the program into a scheme and its contents, with an emphasis on extracting the contents and transforming them into autonomously developed components. Fragments of a number of functional and imperative programming languages, macro-techniques and task management languages are provided as illustrations.
The preprint will be of interest to system programmers, undergraduate and graduate students specializing in system and theoretical programming, and for all those interested in the problems of modern computer science, programming and information technology.
The research was supported by the Russian Foundation for Basic Research (RFBR) of the Siberian Branch of the Russian Academy of Sciences № 18-07-01048-a.