Засіб порівняння версій програм на мові LISP з використанням абстрактного семантичного дерева

dc.contributor.advisorМарченко, Олександр Іванович
dc.contributor.authorЄрмоленко, Денис Вадимович
dc.date.accessioned2021-08-22T20:14:33Z
dc.date.available2021-08-22T20:14:33Z
dc.date.issued2021-06
dc.description.abstractenThe qualification work includes an explanatory note (62 p., 37 pic., 4 appendices). The purpose of the development is to create a tool for comparing versions of programs in the LISP language using an abstract semantic tree, which will help increase the efficiency and productivity of software development in the LISP language. The developed tool allows: - structural comparison between the 2 input files containing programs in the LISP language; - detect lexical, syntactic, or semantic errors in the input files and provide a user-friendly graphical interface for demonstrating errors; - detect s-expressions that have been added, deleted, or moved to another s-expression in the new version of the program in LISP, taking into account their semantics and highlight them in a certain color within the graphical interface; - see separately the results of comparing the content of top-level s-expressions that have identifiers. During the implementation of the tool: - the analysis of existing decisions was carried out; - the Common Lisp and C++ programming languages were used; - the Qt5 framework was used to create a graphical interface; - the backend part was developed; - unit-tests were developed to test the backend part of the tool; - the frontend part was developed. Using this tool will help increase the efficiency and productivity of software development in the LISP language.uk
dc.description.abstractukКваліфікаційна робота включає пояснювальну записку (62 с., 37 рис., 4 додатки). Метою розробки є створення засобу порівняння версій програм на мові LISP із застосуванням абстрактного семантичного дерева, який допоможе підвищити ефективність та продуктивність розроблення програмного забезпечення на мові LISP. Розроблений засіб дозволяє: – порівнювати структурно між собою 2 вхідні файли із текстами програм на мові LISP; – виявляти лексичні, синтаксичні чи семантичні помилки у вхідних файлах та надавати зручний графічний інтерфейс для демонстрації помилок; – класифікувати ідентифікатори s-виразів верхнього рівня; – виявляти s-вирази, що були додані, видалені чи переміщені до іншого s-виразу в новій версії програми на мові LISP з урахуванням їхньої семантики й виділяти їх певним кольором всередині графічного інтерфейсу; – дивитися окремо результати порівняння вмісту s-виразів верхнього рівня, що мають ідентифікатори. В ході розробки засобу: – проведено аналіз існуючих рішень; – використано мови програмування Common Lisp та C++; – використано фреймворк Qt5 для створення графічного інтерфейсу; – розроблено backend частину засобу; – розроблені юніт-тести для тестування backend частини засобу; – розроблено frontend частину засобу. Використання цього засобу допоможе підвищити ефективність та продуктивність розробки програмного забезпечення на мові LISP.uk
dc.format.page75 с.uk
dc.identifier.citationЄрмоленко, Д. В. Засіб порівняння версій програм на мові LISP з використанням абстрактного семантичного дерева : дипломний проєкт ... бакалавра : 123 Комп'ютерна інженерія / Єрмоленко Денис Вадимович. – Київ, 2021. – 75 с.uk
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/43367
dc.language.isoukuk
dc.publisherКПІ ім. Ігоря Сікорськогоuk
dc.publisher.placeКиївuk
dc.subjectLISPuk
dc.subjectабстрактне семантичне деревоuk
dc.subjectлексичний аналізuk
dc.subjectсинтаксичний аналізuk
dc.subjectC++uk
dc.subjectQTuk
dc.subjectструктурне порівнянняuk
dc.subjectGUIuk
dc.subjectдопоміжний засібuk
dc.subjectabstract semantic treeuk
dc.subjectlexical analysisuk
dc.subjectsyntactic analysisuk
dc.subjectstructural comparisonuk
dc.subjecthelper tooluk
dc.titleЗасіб порівняння версій програм на мові LISP з використанням абстрактного семантичного дереваuk
dc.typeBachelor Thesisuk

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
YermolenkoDV_bakalavr.pdf
Розмір:
1.54 MB
Формат:
Adobe Portable Document Format
Опис:
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
9.01 KB
Формат:
Item-specific license agreed upon to submission
Опис: