Obousměrné transpilátory vyšších programovacích jazyků
Loading...
Date
Authors
Halamka, Marek
Advisor
Referee
Mark
D
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
ORCID
Abstract
Tato práce se zaměřuje na efektivní návrh a implementaci obousměrného transpilátoru mezi vyššími programovacími jazyky. Cílem je vytvořit nástroj umožňující obousměrný překlad zdrojových textů mezi podmnožinami programovacích jazyků PHP a Python. Proces transpilace staví na metodách obvyklého překladače, což zahrnuje detekci chyb a zajištění funkční ekvivalence zdrojového kódu, ale také se zabývá problémem zachování vizuální podoby kódu. Výzvy pro zachování konstrukcí jsou řešeny v rámci transpilační fáze provádějící generaci cílového kódu na základě interní reprezentace zdrojového kódu. Hlavním přínosem práce je implementace nástroje schopného překladu mezi zdrojovými kódy dvou populárních jazyků, což může být v praxi užitečné například při migraci existujících projektů mezi různými technologiemi.
This thesis focuses on the design and implementation of an efficient two-way transpiler between high-level programming languages. The goal is to create a tool that allows bidirectional translation of source texts between subsets of PHP and Python programming languages. The transpilation process builds on the methods of a typical compiler, which includes error detection and ensuring functional equivalence, but also addresses the problem of preserving the visual appearance of the code. The challenges of preserving constructs are addressed within the transpilation phase, which generates target code based on the internal representation of the source code. The main contribution of this thesis is the implementation of a tool capable of translating between the source codes of two popular languages, which can be useful in practice, for example, when migrating existing projects between different technologies.
This thesis focuses on the design and implementation of an efficient two-way transpiler between high-level programming languages. The goal is to create a tool that allows bidirectional translation of source texts between subsets of PHP and Python programming languages. The transpilation process builds on the methods of a typical compiler, which includes error detection and ensuring functional equivalence, but also addresses the problem of preserving the visual appearance of the code. The challenges of preserving constructs are addressed within the transpilation phase, which generates target code based on the internal representation of the source code. The main contribution of this thesis is the implementation of a tool capable of translating between the source codes of two popular languages, which can be useful in practice, for example, when migrating existing projects between different technologies.
Description
Keywords
Citation
HALAMKA, M. Obousměrné transpilátory vyšších programovacích jazyků [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. RNDr. Milan Češka, Ph.D. (předseda)
Ing. Zbyněk Křivka, Ph.D. (člen)
Ing. Zdeněk Materna, Ph.D. (člen)
doc. Ing. Jan Kořenek, Ph.D. (člen)
Ing. Jaroslav Rozman, Ph.D. (člen)
Date of acceptance
2025-06-16
Defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm D.
Result of defence
práce byla úspěšně obhájena
