Journal of Siberian Federal University. Engineering & Technologies / Development of Procedural-Parametric Paradigm in the Language GO

Full text (.pdf)
Issue
Journal of Siberian Federal University. Engineering & Technologies. 2020 13 (7)
Authors
Smogluk, Sergey Yu.; Garin, Eugeniy N.; Romanova, Daria S.
Contact information
Smogluk, Sergey Yu.: Siberian Federal University Krasnoyarsk, Russian Federation; ; Garin, Evgeniy N.: Siberian Federal University Krasnoyarsk, Russian Federation; Romanova, Daria S.: Siberian Federal University Krasnoyarsk, Russian Federation
Keywords
procedural-parametric paradigm; parametric polymorphism; structural programming; procedural programming; data processing; programming languages; data polymorphism; algorithm changes
Abstract

The article presents a programming paradigm that defines a new style of program development called procedural-parametric programming (PPP). The paradigm is based on parametric polymorphism, which allows the procedures to accept and process variant data types without the algorithmic choice of alternatives within these procedures. In procedural programming languages, such types are described by unions (union in C, C++) or variant entries (in Pascal). Algorithmic processing of variants is carried out by means of conditional operators or switches. This approach is a development of procedural programming methods and acts as an alternative to object-oriented programming. The procedural-parametric paradigm of programming is an extension of the procedural approach. It makes possible to increase the capabilities of the latter by supporting data polymorphism. The application of the proposed approach will allow to increase the functional capabilities of the procedures without making any internal algorithmic changes. Procedural-parametric programming can be used both independently and in combination with other programming paradigms

Pages
777–787
DOI
10.17516/1999-494X-0230
Paper at repository of SibFU
https://elib.sfu-kras.ru/handle/2311/135261

Creative Commons License This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0).