For attention of scientists!

Scientific publications (articles, monographs, educational publications, preprints or post-prints of conference proceedings, etc.) of employees of Dnipro National University of Railway Transport named after Academician V. Lazaryan made by other publishers, which have no restrictions for their placement on the Internet, are accepted in the repositories of DNURT. They must comply with the following rules.

The author provides an electronic version of the work to the library (file size should not exceed 512 MB) in any format, but the formats given below (see table) are preferable.

RECOMMENDED FORMATS FOR PLACEMENT IN REPOSITORY

material

format

extension

Text

Adobe PDF, Microsoft Word

pdf, available for copying, doc, docx

Presentation

Microsoft PowerPoint, Adobe PDF

ppt, pptx, pps, pdf

Tables

Microsoft Excel

xls, xlsx

Images

JPEG, GIF, PNG, BMP, TIFF

jpg, gif, png, bmp, tiff

Audio

FLAC, МР3

flac, mp3

Video

Movie, MP4, Windows MediaVideo

mpeg, mpg, mpe, mp4, m4v, mov, wmv

 

A separate file (doc, docx) is added to the publication, which should include the following data:

  • the name, surname and patronymic of the author(s) in the language of the original article (since 2017 one variant of the name spelling is added to the repository); information about the author or authors (department, organization unit, position, ORCID of the author (authors), contact telephone numbers, e-mail);
  • work title, abstract  and keywords in Ukrainian and English (mandatory) or other language optionally;
  • bibliographic description of the publication, DOI identifier, or (in the absence of DOI) a URL link, if the e-version of the article is available on the Internet.

The repository also contains abstracts of papers and conference proceedings with a volume of at least 3 pages and a reference list.

According to the decision of the university administration, textbooks, manuals, monographs and other documents created by teachers and research staff in the framework of the scientific activity of the department (for use in the educational and scientific process) should be submitted to the library in the amount of at least one copy of the printed edition, as well as electronic version, verified by the Copyright Agreement, for placement in the repository (see the link in the Teachers tab on the NTB website https://library.diit.edu.ua/uk/page/teachers Copyright Agreement for the assignment of non-exclusive rights).

Electronic version of the document is submitted in pdf-format. It includes the cover image, the title page of the publication, the full text, if there is a permission of the author (all authors) and the publisher to place it on the Internet, or a part of the text (article, chapter, section), if access to the text is restricted, the last sheet of the publication with the initial data. If the access to the document is restricted, 30 pages are placed in the repository (cover, title page, table of contents, allowed part of the text, list of references). If there is no e-version of the document, provide the information of the edition where the work was published and URL, if known where the e-version is placed.

Bibliographic description (example):

It is drawn up according to DSTU 8302:2015 “Information and Documentation. Bibliographic Reference. General Terms and Rules of Formatting." (Інформація та документація. Бібліографічне посилання. Загальні положення та правила складання).

Сторчак І. М., Іванов O. П. Аналіз механізмів та ефективності спеціалізованих мов функціонального програмування. Наука та прогрес транспорту. 2019. № 6 (84). С. 117–129. DOI: 10.15802/stp2019/195581.


AuthorsStorchak, Ihor Mykolaiovych, Ivanov, Oleksandr Petrovych

Authors identifier ORCID:

І. Storchak: ORCID 0000-0002-8434-9765; О. Ivanov: ORCID 0000-0003-1259-6377


Article title:

Аналіз механізмів та ефективності спеціалізованих мов функціонального програмування

Analysis of Mechanisms and Efficiency of Specialized Languages of Functional Programming

Publication:

Dnipro National University named after Academician V. Lazaryan

Abstract:

UK: Мета. Автори ставлять за мету встановити відмінності функціональних мов програмування, з`ясувати можливості найбільш популярних мов шляхом їх порівняння та аналізу. Для виявлення основних можливостей мов потрібно розглянути їх структури даних, а також сфери застосування. Виконати аналіз та порівняння прикладів із різних сфер використання мов за метриками складності текстів програм. Методика. Відібрано п’ять найпопулярніших спеціалізованих функціональних мов програмування: Erlang, Lisp, F#, Scala та Haskel. Для отримання інформації про можливості кожної мови вивчено їх структури даних, а також сфери застосування, проведено огляд офіційної документації. Експериментальну базу дослідження сформовано з текстів сучасних програмних систем, отриманих із відкритого джерела та підібраних за схожими напрямами застосування й однаковим обсягом тексту. Порівняльний аналіз прикладів програм виконано за метриками Холстеда, які розраховують за допомогою спеціально розробленого програмного забезпечення. Аналіз отриманих оцінок якості виконано графічним способом. Результати. Розроблено програмне забезпечення, яке дозволяє отримати метрики Холстеда для вхідних текстів програм на таких мовах функціонального програмування, як Erlang, Lisp, F# та Scala. Складність синтаксису мови програмування Haskel не дозволила використати метрики для оцінки тексту, тому було проведено тільки огляд можливостей за документацією. За допомогою порівняльного аналізу показано відмінність мов та окреслено сфери їх використання. Виконано порівняння прикладів різного об’єму з таких сфер використання, як задачі системного програмування, робота з графікою, математичні розрахунки, системи штучного інтелекту, веб-програмування тощо. Наукова новизна. Автори вперше провели порівняльний аналіз спеціалізованих мов за допомогою метрик складності текстів, який дозволив встановити, що мова Lisp має найменший словник і довжину коду, текст на Scala має найбільш структурований вигляд, а F# та Erlang відзначаються зайвою багатослівністю. Практична значимість. Отримані висновки та виміри допоможуть під час вибору найбільш ефективної мови функціонального програмування для вирішення конкретних завдань з урахуванням відмінностей у сферах застосування. Розроблене програмне забезпечення дозволяє виконувати виміри для різних текстів програм під час розробки та супроводу складних програмних систем.

Ключові слова: показники використання локомотивів, зменшення розмірності даних, метод головних компонент, метод аналізу ієрархій, індекс процесу, система утримання локомотивів, індекси безпеки руху


EN: Purpose. The authors aim to determine the differences between functional programming languages, to identify the capabilities of the most popular languages by comparing and analyzing them. To identify the main features, it is necessary to consider their data structures, as well as the application scope. The authors also aim to analyze and compare examples from various fields of language application using metrics of the program texts complexity. Methodology. The five most popular specialized functional languages are selected: Erlang, Lisp, F#, Scala and Haskel. An overview of the official documentation was conducted to obtain information on the capabilities of each language; their data structures and the application scope were studied. The experimental research base is formed from texts of the existing open source software systems and matched by similar applications and equal volume of text. Comparative analysis of sample programs is performed using Halsted metrics, which are calculated using specially designed software. The analysis of the received quality assessments is done graphically. Findings. Software has been developed to obtain Halsted metrics for program input texts in functional programming languages such as Erlang, Lisp, F# and Scala. The complexity of the Haskel programming language syntax did not allow the use of metrics to evaluate the text, so only a documentation review was performed. Benchmarking shows the differences between languages and outlines their use. The examples of different volumes from such areas of application as system programming tasks, graphing, mathematical calculations, AI systems, web programming, etc. were compared. Originality. The authors first conducted a comparative analysis of specialized languages using text complexity metrics, which made it possible to establish that Lisp has the smallest vocabulary and code length, Scala text has the most structured form, and F# and Erlang are marked with extra verbosity. Practical value. The findings and measurements will help in selecting the most effective functional programming language for solving specific problems, taking into account differences in applications. The developed software allows making measurements for various program texts when developing and maintaining complex software systems.

Keywords: functional programming, Halstead metrics, language capabilities, language comparison, specialized functional languages, Erlang, Haskel, Lisp, F#, Scala


Bibliographic description of the part of the publication (example):

Gabrinets V. O., Tytarenko I. V., Gnatiuk G. L. Substantiation of the Further Implementation of Heat Pump and Heat Storage Technology into the Energy of Industry and Utilities. Providing Energy-Saving Technologies: Technical, Ecological and Economic Aspects : collective monogr. / ed. L.V. Nakashydze. Dnipro, 2019. Pt. 3. P.53–60. ISBN 978-0-9988574-2-3.

 

For any questions, contact the Scientific and Technical Library, r. 262 (tel. 1-86) or e-maildiitl@i.ua