Areal data types in instrumental approach to programming
- Authors: Dagaev D.V.1
-
Affiliations:
- Issue: No 2 (2025)
- Pages: 115-131
- Section: Articles
- URL: https://journals.rcsi.science/2454-0714/article/view/359375
- DOI: https://doi.org/10.7256/2454-0714.2025.2.73776
- EDN: https://elibrary.ru/FLOMPB
- ID: 359375
Cite item
Full Text
Abstract
For a large amount of tasks classical structured programming approach is preferred to object-oriented one. These preferences are typical for deterministic world and in machine-representation-oriented systems. A modular Oberon programming language was oriented on such tasks. It demonstrate minimalistic way of reliability, which differs from vast majority of program systems maximizing amount of features supported. Usage of instrumental approach instead of OOP was proposed before for solving the problems of deterministic world. The data-code separation principle assumes that data lifecycle is independently controlled, and lifetime duration is longer then code lifetime. The areal data types proposed by author are aimed for implementation within instrumental approach. Areal data types provide orthogonal persistency and are integrated with codes, defined in types hierarchy for instruments. Areal data types are embodied in MultiOberon system compilers. Reference to address conversion methods are based on runtime system metadata. Areal types integration resulted in developing additional test in MultiOberon. MultiOberon restrictive semantics makes an opportunity to turn off pointer usage permissions and switch on areal types usage. Areal is fixed for specifically marked data type. Areal references are implemented as persistent ones in areal array. Due to such paradigm the problem of persistence reference during software restarts was solved. Novelty in work is using areal references which gains in index type and pointer type advantages. Such approach implements principles of generic programming without creating dependencies of types extensions and template specifications. An example of generic sorting algorithm is provided for areal types. A new data type differs with compactness and simplicity in comparison to dynamic structures. It demonstrates advantages for systems with complex technological objects data structures in relatively static bounds.
About the authors
Dmitry Viktorovich Dagaev
Email: dvdagaev@oberon.org
ORCID iD: 0000-0003-0343-3912
References
Mansi Dhirajsinh Parmar, Sarthavi Parmar. Survey on Concept of Object-Oriented Programming. International Journal of Scientific Research in Computer Science Engineering and Information Technology. 2024. Vol. 10, No. 2. P. 427-431. doi: 10.32628/CSEIT243647. EDN: AMCTWA. West D. Object Thinking. Redmond: Microsoft Press, 2004. Вирт Н. Алгоритмы и структуры данных. М.: ДМК-Пресс, 2016. Дагаев Д.В. Инструментальный подход к программированию в системе МультиОберон // Программные системы и вычислительные методы. 2024. № 1. С. 31-47. doi: 10.7256/2454-0714.2024.1.69437 EDN: WVZVVU URL: https://nbpublish.com/library_read_article.php?id=69437 Дагаев Д.В. Ограничительная семантика языка в системе МультиОберон // Программные системы и вычислительные методы. 2023. № 1. С. 26-41. doi: 10.7256/2454-0714.2023.1.36217 EDN: IWIODR URL: https://nbpublish.com/library_read_article.php?id=36217 Rajive J., Ph.D. Data-Oriented Architecture: A Loosely-Coupled Real-Time SOA. Real-Time Innovations, Inc., 2007. Hosking A., Nystrom N., Cutts Q., Brahnmath K. Optimizing the read and write barriers for orthogonal persistence // Advances in Persistent Object Systems / Morrison J., Atkinson M. (Eds.). San Francisco: Morgan Kaufmann, 1999. P. 11. Lefort A. A Support for Persistent Memory in Java. Computer science. Institut Polytechnique de Paris, 2023. English. ffNNT : 2023IPPAS001. Bläser L., Russo C., Greif G., Vandersmith R., Ibrahim J. Smarter Contract Upgrades with Orthogonal Persistence // Proceedings of the 16th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages (VMIL '24). Pasadena, CA, USA, 2024. P. 11. Вирт Н., Гуткнехт Ю. Разработка операционной системы и компилятора. Проект Оберон. М.: ДМК-Пресс, 2015. Crelier R. OP2: A Portable Oberon Compiler. ETH, Departement Informatik, 1990. P. 32-34. Леоненков А.В. Самоучитель UML. 2-е изд., перераб. и доп. СПб.: БХВ-Петербург, 2006. P. 150. Гамма Э., Хэлм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. СПб.: Питер, 2001. Мартин Р. Чистая архитектура. Искусство разработки программного обеспечения. СПб.: Питер, 2022. Мартин Р. Идеальный программист. Как стать профессионалом разработки ПО. СПб.: Питер, 2022. Musser D.R., Stepanov A.A. Generic Programming // Proceedings of the International Symposium ISSAC'88 on Symbolic and Algebraic Computation. New York: Springer-Verlag, 1988. P. 13-25. Roynard M. Generic programming in modern C++ for Image Processing. Signal and Image Processing. Sorbonne Université, 2022. English. ffNNT : 2022SORUS287ff. Дагаев Д.В. О разработке Оберон-системы с заданными свойствами эргодичности // Труды ИСП РАН. 2020. Т. 32, вып. 6. С. 67-78. doi: 10.15514/ISPRAS-2020-32(6)-5. EDN: HBGGIK. Дагаев Д.В. Исполняющая машина автоматных программ // Научно-технический вестник информационных технологий, механики и оптики. 2021. Т. 21, № 4. С. 525-534. doi: 10.17586/2226-1494-2021-21-4-525-534. EDN: MJZXQZ. Lo S.K., Lu Q., Zhu L., Paik H.-Y., Xu X., Wang C. Architectural patterns for the design of federated learning systems // Journal of Systems and Software. 2022. Vol. 191. P. 357. Ali H.M., Hamza M.Y., Rashid T.A. Exploring Polymorphism: Flexibility and Code Reusability in Object-Oriented Programming // Proceedings of the 4th International Conference on Recent Innovation in Engineering (ICRIE 2023). University of Duhok, College of Engineering, 13th-14th September 2023. Paper No. 33. Khattak U.F., Hussein H.A. A review on graph representation for object-oriented programming // BIO Web of Conferences. 2024. Vol. 97. Article 00131. doi: 10.1051/bioconf/20249700131. EDN: YIHEDW.
Supplementary files

