Analýza Scala programů pomocí Grafových Databází
Analyze Scala Code Using Graph Database
Type of document
bakalářská prácebachelor thesis
Author
Otakar Vinklář
Supervisor
Křikava Filip
Opponent
Valenta Michal
Field of study
Teoretická informatikaStudy program
InformatikaInstitutions assigning rank
katedra teoretické informatikyRights
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Show full item recordAbstract
Aby bylo možné vyvinout takový programovací jazyk, který budou lidé rádi využívat, je nutné znát, jak je tento jazyk používaný. V článku [KŘIKAVA, Filip; MILLER, Heather; VITEK, Jan. Scala implicits are everywhere: a large-scale study of the use of Scala implicits in the wild. Proceedings of the ACM on Programming Languages. 2019, vol. 3, no.OOPSLA, pp. 1-28.] Křikava a jeho kolegové provádí rozsáhlou studii použití implicitních konverzí a implicitních parametrů v jazyce Scala. Poslední část řešení této analýzy je ale těžkopádná, protože relační datový model není vhodný pro reprezentaci dat s velkým množstvím vzájemných vazeb. Tato práce se snaží zlepšit řešení této analytické části. Za úkol si dává především zjednodušit vyváření nových dotazů. Tyto problémy řeší za použití grafové databáze, která umožňuje ukládat data s velkým množstvím propojení. V této práci byla vybrána grafová databáze Neo4j s jejím dotazovacím jazykem Cypher. Tato práce ukazuje, že grafová databáze a její dotazovací jazyk nabízí vysokoúrovňové rozhraní pro statickou analýzu kódu. For a programming language to become as convenient as possible and to evolve it is necessary to understand how the language is used by the programmers. In paper [KŘIKAVA, Filip; MILLER, Heather; VITEK, Jan. Scala implicits are everywhere: a large-scale study of the use of Scala implicits in the wild. Proceedings of the ACM on Programming Languages. 2019, vol. 3, no.OOPSLA, pp. 1-28.] Krikava et al colleagues conduct large scale study on Implicits -- Scala programming language feature. The analysis part of the underlying solution proves to be cumbersome, as the relational data model is not suitable for highly connected data. This thesis follows the underlying implementation with the aim to improve the analysis part, in terms of flexibility to support the creation of new queries. This thesis confronts these challenges with the use of graph database, which supports storing data with high amount of relationships. Particularly Neo4j graph database implementation with its Cypher query language is chosen for this purpose. This thesis shows, that the graph database with its query language offers a high-level interface for static code analysis.
Collections
- Bakalářské práce - 18101 [349]
Related items
Showing items related by title, author, creator and subject.
-
Software pro podporu studia cizích jazyků pracující s frekvencí výskytu slov ve studijních materiálech
Author: Bohuňovský Tomáš; Supervisor: Hunka Jiří; Opponent: Chludil Jiří
(České vysoké učení technické v Praze. Vypočetní a informační centrum.Czech Technical University in Prague. Computing and Information Centre., 2015-06-08)Tato práce řeší aplikaci doslovných překladů textu pro účely výuky cizích jazyků. Jejím cílem je tvorba prototypu, který postupně skrývá překlady jednotlivých slov. Algoritmus vychází z principu prokládaného opakování. -
Paralelní implementace symbolické regrese
Author: Malíček Tomáš; Supervisor: Borovička Tomáš; Opponent: Stuchlík Ondřej
(České vysoké učení technické v Praze. Vypočetní a informační centrum.Czech Technical University in Prague. Computing and Information Centre., 2017-05-09)Svět kolem nás je plný neprozkoumaných dat. Tato diplomová práce se zaměřuje na jejich prozkoumání pomocí symbolické regrese, která je založena na hledání vzorečku nejlépe popisujícího hodnoty funkce použité pro vytvoření ... -
Knihovna pro konstrukci staticky typovaných PostgreSQL dotazů v jazyce Scala
Author: Petr Hron; Supervisor: Létal Vojtěch; Opponent: Daněček Jiří
(České vysoké učení technické v Praze. Vypočetní a informační centrum.Czech Technical University in Prague. Computing and Information Centre., 2021-08-26)Hlavní téma této práce je vývoj a implementace knihovny pro vytváření staticky typovaných SQL dotazů v jazyce Scala, společně s průzkumem existujících Scala knihoven, které se zabývají vytvářením SQL dotazů. Nejprve jsou ...