Количественная оценка преимуществ языка описания задачи по сравнению с языком Perl и оптимизация транслятора

Аннотация

В статье проведено сравнение текстов, написанных на языке описания задачи (CDTL) с аналогичными кодами алгоритмического языка высокого уровня Perl. Для того, чтобы лучше, понять преимущества языка описания задачи (ранее язык описания проблемы), были произведены количественные расчёты для сравнения с алгоритмическим языком программирования высокого уровня по таким важным показаниям как сложность написания программы, количество ошибок и коэффициент сжатия текста описания CDTL по сравнению с кодами программ на алгоритмическом языке программирования высокого уровня Perl. Оценка сокращения сложности разработки программ на CDTL проводилась с использованием метрик Холстеда и Джилба. Количество сокращения ошибок в программах рассчитывалось с помощью метрики Холстеда и простой интуитивной модели.
Ранее созданный транслятор с языка CDTL в Perl нуждался в доработке, к тому же имелись и возможности для значительного его улучшения. Поскольку база данных алгоритмов (специальная таблица базы данных для хранения описаний программных модулей определённой проблематики и ссылок на их код) была создана и добавлена в открытый доступ, нужно было открыть к ней доступ людям, которые будут использовать модули в своих целях и оставлять на них отзывы. С помощью информации из отзывов можно находить и исправлять ошибки в кодах программ, находящихся в базе. Для решения задачи быстрого анализа отзывов на модули была написана специальная программа для ЭВМ.
Также был проведён экспериментальный анализ похожих отзывов и описаны его результаты. В результате этого эксперимента программа распознала верно 92% отзывов, в распознании 4% отзывов допустила ошибку и 4% отзывов она распознать не смогла. Помимо этого, был проведён эксперимент по генерации кода транслятора из CDTL в Perl с помощью самого этого транслятора, который закончился весьма успешно. Длина описания задания на CDTL составляет 10 строк. Длина кода транслятора, написанного программистом - 771 строку. Результаты всех этих работ представлены в данной статье.

Сведения об авторе

Elizaveta Alexandrovna Dorenskaya, Национальный исследовательский центр "Курчатовский институт"

инженер-программист

Литература

1. Dorenskaya E.A., Kulikovskaya A.A., Semenov Y.A. Exploring Possibilities of Language for Describing the Problem. Modern Information Technologies and IT-Education. 2020;16(3):653-663. (In Russ., abstract in Eng.) https://doi.org/10.25559/SITITO.16.202003.653-663
2. Dorenskaya E.A., Semenov Y.A. About the programming techniques, oriented to minimize errors. Modern Information Technologies and IT-Education. 2017;13(2):50-56. (In Russ., abstract in Eng.) https://doi.org/10.25559/SITITO.2017.2.226
3. Dorenskaya E.A., Semenov Y.A. New Methods of Minimizing the Errors in the Software. CEUR Workshop Proceedings. 2018;2267:150-154. Available at: https://ceur-ws.org/Vol-2267/150-154-paper-27.pdf (accessed 27.04.2024).
4. Semenov Y.A., Ovsyannikov A.P., Ovsyannikova T.V. Development Bank of algorithms and basics of the language problem descriptions to minimize the number of software errors. SRISA Proceedings. 2016;6(2):96-100. (In Russ., abstract in Eng.) EDN: ZCCBKT
5. Kulikovskaya A.A., Dorenskaya E.A., Semenov Yu.A. Development of an Algorithm’s Bank and Method for Searching Programs in Accordance with User Requirements. Modern Information Technologies and IT-Education. 2020;16(1):81-89. (In Russ., abstract in Eng.) https://doi.org/10.25559/SITITO.16.202001.81-89
6. Chen M. Trust, understanding, and machine translation: the task of translation and the responsibility of the translator. AI & SOCIETY. 2024;39:2307-2319. https://doi.org/10.1007/s00146-023-01681-6
7. Jose M.A., Cozman F.G. A multilingual translator to SQL with database schema pruning to improve self-attention. International Journal of Information Technology. 2023;15(6):3015-3023. https://doi.org/10.1007/s41870-023-01342-3
8. Xie B., et al. On-Demand Triggered Memory Management Unit in Dynamic Binary Translator. In: Li C., Li Z., Shen L., Wu F., Gong X. (Eds.) Advanced Parallel Processing Technologies. APPT 2023. Lecture Notes in Computer Science. Vol. 14103. Singapore: Springer; 2024. p. 297-309. https://doi.org/10.1007/978-981-99-7872-4_17
9. Guizzo G., Zhang J.M., Sarro F., et al. Mutation analysis for evaluating code translation. Empirical Software Engineering. 2024;29(1):19. https://doi.org/10.1007/s10664-023-10385-w
10. Even-Mendoza K., Cadar C., Donaldson A.F. CsmithEdge: more effective compiler testing by handling undefined behaviour less conservatively. Empirical Software Engineering. 2024;27(6):129. https://doi.org/10.1007/s10664-022-10146-1
11. Chatterjee T., Das A., Mohtashim S.I., et al. Qurzon: A Prototype for a Divide and Conquer-Based Quantum Compiler for Distributed Quantum Systems. SN Computer Science. 2022;3(4):323. https://doi.org/10.1007/s42979-022-01207-9
12. Geng H.N., Lyu F., Zhong M., et al. Automatic Target Description File Generation. Journal of Computer Science and Technology. 2023;38(6):1339-1355. https://doi.org/10.1007/s11390-022-1919-x
13. Baev R.V., Skvortsov L.V., Kudryashov E.A., et al. Preventing Vulnerabilities Caused by Optimization of Code with Undefined Behavior. Programming and Computer Software. 2022;48(7):445-454. https://doi.org/10.1134/S0361768822070027
14. Yu X., Tang W., Xiong T., et al. Enhancing embedded systems development with TS. Automated Software Engineering. 2024;31(1):6. https://doi.org/10.1007/s10515-023-00404-x
15. Kulikovskaya A.A., Dorenskaya E.A., Semenov Yu.A. Quantitative Security Characteristics of Perl Programs. Modern Information Technologies and IT-Education. 2022;18(4):855-860. (In Russ., abstract in Eng.) https://doi.org/10.25559/SITITO.18.202204.855-860
16. Dorenskaya E.A., Semenov Y.A. The determination method for contextual meanings of words and documents. Modern Information Technologies and IT-Education. 2018;14(4):896-902. (In Russ., abstract in Eng.) https://doi.org/10.25559/SITITO.14.201804.896-902
17. Dorenskaya E.A., Semenov Y.A. The Improved Algorithm for Calculation of the Contextual Words Meaning in the Text. Modern Information Technologies and IT-Education. 2019;15(4):954-960. https://doi.org/10.25559/SITITO.15.201904.954-960
18. Padaryan V.A., Getman A.I., Solovyev M.A., et al. Methods and software tools to support combined binary code analysis. Programming and Computer Software. 2014;40:276-287. https://doi.org/10.1134/S0361768814050077
19. Vasilenko N.V., Makarov V.A. Software reliability assessment models. Vestnik Novgorodskogo gosudarstvennogo universiteta = Vestnik of Novgorod State University. 2004;(28):126-132. (In Russ., abstract in Eng.) EDN: PHYITB
20. Lebedeva T.N., Nosova L.S. Formalization of data in the programming language 1C. Vestnik of Astrakhan State Technical University. Series: Management, Computer Sciences and Informatics. 2015;(3):113-121. (In Russ., abstract in Eng.) EDN: UBKNKP
21. Kazakova A.E. Peculiarities of semantics of programming languages. Moscow University Bulletin. Series 7. Philosophy. 2007;(6):69-75. (In Russ., abstract in Eng.) EDN: JWPOYP
22. Naumov R.V. Aktual'nye jazyki programmirovanija [Current programming languages]. ACADEMY. 2016;(1):49-50. (In Russ., abstract in Eng.) EDN: VIQSND
23. Ferrara P., Cortesi A., Spoto F., From CIL to Java bytecode: Semantics-based translation for static analysis leveraging. Science of Computer Programming. 2020;191:102392. https://doi.org/10.1016/j.scico.2020.102392
24. Zaytsev V. Modelling of language syntax and semantics: The case of the assembler compiler. Journal of Object Technology. 2020;19(2):1-22. https://doi.org/10.5381/jot.2020.19.2.a5
25. Rahman M.M., Watanobe Y., Nakamura K. Source Code Assessment and Classification Based on Estimated Error Probability Using Attentive LSTM Language Model and Its Application in Programming Education. Applied Sciences. 2020;10(8):2973. https://doi.org/10.3390/app10082973
Опубликована
2024-10-15
Как цитировать
DORENSKAYA, Elizaveta Alexandrovna. Количественная оценка преимуществ языка описания задачи по сравнению с языком Perl и оптимизация транслятора. Современные информационные технологии и ИТ-образование, [S.l.], v. 20, n. 3, p. 740-747, oct. 2024. ISSN 2411-1473. Доступно на: <http://sitito.cs.msu.ru/index.php/SITITO/article/view/1069>. Дата доступа: 01 dec. 2025 doi: https://doi.org/10.25559/SITITO.020.202403.740-747.
Раздел
Исследования и разработки в области новых ИТ и их приложений