Detail práce
Překladač z Octave do C++
Programy vyvinuté v interaktivním programovém prostředí Matlab je náročné využít na zařízeních s malým množstvím paměti a v integraci do projektů bez podpory tohoto jazyka. Proto jsou programy převáděny do jazyka C++. V praxi se používá manuálního převodu, který výrazně prodlužuje dobu nasazení. Tato práce se zaměřuje na automatizování překladu z jazyka Octave/Matlab do C++ s použitím knihovny Eigen umožňující využití maticových a vektorových operací. Překladač umožňuje překlad základních 39 operací a 13 funkcí jazyka Octave. Experimenty ukazují, že se tímto překladem dosáhne snížení požadavku paměti až o 99%.
Překladač, transpiler, kompilátor, Eigen, Octave, C++, generování kódu, paměťová náročnost, matice
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 A.
- Poradil by si váš překladač se situací, kdy v Octave máme iteraci a v jejím těle přiřazujeme iterační proměnné hodnoty různých typů? Objasněte.
- Proč jste nevyužil některý z generátorů syntaktických analyzátorů s možností doplnit rutiny pro generování vnitřní reprezentace (např. Yacc nebo ANTLR)?
Burget Radek, doc. Ing., Ph.D. (UIFS FIT VUT), člen
Chudý Peter, doc. Ing., Ph.D. MBA (UPGM FIT VUT), člen
Martínek Tomáš, doc. Ing., Ph.D. (UPSY FIT VUT), člen
Smrčka Aleš, Ing., Ph.D. (UITS FIT VUT), člen
@bachelorsthesis{FITBT19035, author = "V\'{a}clav \v{S}ev\v{c}\'{i}k", type = "Bakal\'{a}\v{r}sk\'{a} pr\'{a}ce", title = "P\v{r}eklada\v{c} z Octave do C++", school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}", year = 2017, location = "Brno, CZ", language = "czech", url = "https://www.fit.vut.cz/study/thesis/19035/" }