⚠️ Warning: This is a draft ⚠️

This means it might contain formatting issues, incorrect code, conceptual problems, or other severe issues.

If you want to help to improve and eventually enable this page, please fork RosettaGit's repository and open a merge request on GitHub.

{{feature|Programming paradigm}}'''Procedural programming''' describes a way of decomposing a programming problem, when a larger problem is decomposed into smaller ones by means of subprograms. This type of decomposition is called ''procedural''. It is typical for [[imperative programming]] and functional programming paradigms.

In [[object-oriented programming]] procedural decomposition plays a subordinate role. Subprograms become methods of objects, which replace the former as building blocks.

Historically, procedural programming played a decisive role in the creation of programming solutions to engineering problems.