1. Statická analýza zdrojového kódu jazyka CodAL
- Author
-
Hynek, Jiří, Přikryl, Zdeněk, Fajčík, Martin, Hynek, Jiří, Přikryl, Zdeněk, and Fajčík, Martin
- Abstract
Cílem této bakalářské práce je návrh a implementace rozšíření editorů jazyka CodAL v oblasti statické analýzy zdrojového kódu tohoto jazyka a návrhu jeho automatických oprav. Tato forma analýzy je vhodná například pro ověření sémantické korektnosti zdrojového kódu. Práce se dělí na teoretickou a praktickou část. Teoretická část této práce obsahuje obeznámení se s tvorbou rozšíření pro vývojové prostředí z řad platformy Eclipse, zejména s editorem jazyka CodAL, jazykem CodAL a vytyčením chyb tohoto jazyka vhodných pro zpracování statickou analýzou. Praktická část se zabývá konkrétní implementací prvků statické analýzy zdrojového kódu jazyka CodAL a návrhu jeho automatických oprav. Rozšiřované editory jazyka CodAL jsou dostupné ve vývojovém prostředí Codasip Studio založeném především na platformě Eclipse a projektu CDT. Produkt Codasip Studio je vyvíjený společností Codasip ve spolupráci s výzkumnou skupinou Lissom., The goal of bachelor's thesis is to design and implement extensions devoted to source code static analysis and automatic corrections used in CodAL language editors. This form of analysis is convenient e.g. for the source code semantic checks. The thesis consists of theoretical and practical part. Role of the theoretical part is to overview with extension development related to Eclipse platform, especially with the CodAL language editor, CodAL language itself and to define problems of this language which are suitable to be solved on the static analysis level. Practical part includes specific implementation details of the particular static analysis elements and automatic corrections. These extended CodAL language editors are available in integrated development environment Codasip Studio based first and foremost on the Eclipse platform and project CDT. Codasip Studio has been developed by company Codasip Ltd. in collaboration with Lissom research team.