<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">inform</journal-id><journal-title-group><journal-title xml:lang="ru">Информатика</journal-title><trans-title-group xml:lang="en"><trans-title>Informatics</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1816-0301</issn><issn pub-type="epub">2617-6963</issn><publisher><publisher-name>UIIP NASB</publisher-name></publisher></journal-meta><article-meta><article-id custom-type="elpub" pub-id-type="custom">inform-874</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>INFORMATION TECHNOLOGY</subject></subj-group></article-categories><title-group><article-title>О надежности, безопасности и читабельности языков программирования на примере языка Ада</article-title><trans-title-group xml:lang="en"><trans-title>On reliability, safety, and readability of programming languages on the example of Ada language</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Леонтьев</surname><given-names>А. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Leont’ev</surname><given-names>A. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Леонтьев Александр Владимирович - кандидат физикоматематических наук, старший научный сотрудник.</p><p>Переславль-Залесский, Ярославская область</p></bio><bio xml:lang="en"><p>Alexander V. Leont'ev - Cand. Sci. (Phys.-Math.), Senior Researcher.</p><p>Pereslavl-Zalessky, Yaroslavl Region</p></bio><email xlink:type="simple">Alexleontevjor@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Институт программных систем, Российская академия наук</institution></aff><aff xml:lang="en"><institution>Program Systems Institute, Russian Academy of Sciences</institution></aff></aff-alternatives><pub-date pub-type="collection"><year>2019</year></pub-date><pub-date pub-type="epub"><day>26</day><month>12</month><year>2019</year></pub-date><volume>16</volume><issue>4</issue><fpage>88</fpage><lpage>98</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Леонтьев А.В., 2019</copyright-statement><copyright-year>2019</copyright-year><copyright-holder xml:lang="ru">Леонтьев А.В.</copyright-holder><copyright-holder xml:lang="en">Leont’ev A.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://inf.grid.by/jour/article/view/874">https://inf.grid.by/jour/article/view/874</self-uri><abstract><p>Представлены несколько небольших предложений, которые относятся к проектированию языков и отражают взгляды автора на данный предмет. Эти предложения затрагивают надежность, ясность и безопасность типичных, простых конструкций языков программирования, таких как, например, типизация, начальная элаборация, статус переменных, некоторые высокоуровневые операторы и пр. Часто программисты тратят много времени на работу с подобными конструкциями. Представленные предложения мало влияют на сложность и эффективность вычислений. Они предлагаются исключительно для помощи программисту в создании надежных и безопасных программ. Предложения иллюстрируются примерами на языке Ада, который очень удобен для этого, но они могут быть применены и в других языках.</p></abstract><trans-abstract xml:lang="en"><p>A few small suggestions of language design reflect the author's views are presented. These suggestions are mainly related to the reliability and safety of simple, typical structures and statements in programming: typification, compile-time elaborations of variables, status of variables, high-level statements, etc. The programmers often spend working time with similar constructions. From mathematical point of view these suggestions do not effect seriously on the complexity and efficiency of calculations; they are designed exclusively to help a programmer to write reliable, secure and clear programs. These suggestions are illustrated on Ada language, which is very suitable for this purpose, but they can be applied in other languages also.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>языки программирования</kwd><kwd>надежное программирование</kwd><kwd>безопасное программирование</kwd><kwd>стиль программирования</kwd><kwd>проектирование языков</kwd></kwd-group><kwd-group xml:lang="en"><kwd>programming language</kwd><kwd>reliable programming</kwd><kwd>safe programming</kwd><kwd>programming style</kwd><kwd>design of languages</kwd></kwd-group><funding-group><funding-statement xml:lang="ru">Работа выполнена по НИР «Исследование и разработка методов интеллектуального анализа данных» в рамках государственного задания Министерства образования и науки России, номер ГР АААА-А19-119020690042-2</funding-statement><funding-statement xml:lang="en">The publication was prepared within the framework of the state assignment of the Ministry of Education and Science of Russia, number AA AAAA-A19-119020690042-2</funding-statement></funding-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Heinlein C. Null values in programming languages. Proceedings of the 2005 International Conference on Programming Languages and Compilers (PLC 2005), Las Vegas, Nevada, USA, 27-30 June, 2005. Available at: https://www.researchgate.net/publication/221271111_Null_Values_in_Programming_Languages (accessed 13.04.2019).</mixed-citation><mixed-citation xml:lang="en">Heinlein C. Null values in programming languages. Proceedings of the 2005 International Conference on Programming Languages and Compilers (PLC 2005), Las Vegas, Nevada, USA, 27-30 June, 2005. Available at: https://www.researchgate.net/publication/221271111_Null_Values_in_Programming_Languages (accessed 13.04.2019).</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Klimov A., Adamovich A. Can parallel programs be deterministic by construction? Problem statement. National Supercomputing Forum (NSCF 2017), Pereslavl-Zalessky, Russia, November-December 2017. Available at: http://2018.nscf.ru/nscf-eng/ (accessed 13.04.2019).</mixed-citation><mixed-citation xml:lang="en">Klimov A., Adamovich A. Can parallel programs be deterministic by construction? Problem statement. National Supercomputing Forum (NSCF 2017), Pereslavl-Zalessky, Russia, November-December 2017. Available at: http://2018.nscf.ru/nscf-eng/ (accessed 13.04.2019).</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Freeman S. Partial Revelation and Mjdula-3. Available at: https://www.cs.tut.fi/lintula/manual/modula3/modula-3/html/partial-rev/index.html (accessed 13.04.2019).</mixed-citation><mixed-citation xml:lang="en">Freeman S. Partial Revelation and Mjdula-3. Available at: https://www.cs.tut.fi/lintula/manual/modula3/modula-3/html/partial-rev/index.html (accessed 13.04.2019).</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Modula-3. Available at: https://en.wikipedia.org/wiki/Modula-3 (accessed 13.04.2019).</mixed-citation><mixed-citation xml:lang="en">Modula-3. Available at: https://en.wikipedia.org/wiki/Modula-3 (accessed 13.04.2019).</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Wyant G. Introducing modula-3. Linux Journal, 1 December, 1994. Available at: https://www.linuxjournal.com/article/9 (accessed 13.04.2019).</mixed-citation><mixed-citation xml:lang="en">Wyant G. Introducing modula-3. Linux Journal, 1 December, 1994. Available at: https://www.linuxjournal.com/article/9 (accessed 13.04.2019).</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
