NÁZOV | WebAssembly |
---|---|
AUTOR | Bc. Klaudia Garajová |
ŠKOLITEĽ | Mgr. Pavel Petrovič, PhD. |
Webassembly je assembler pre webový prehliadač. Dajú sa do neho kompilovať rôzne jazyky, pozri napríklad prehľad v [1]. Napriek tomu zostávajú aplikácie vo webovom prehliadači v štýle udalosťami riadeného programovania, zatiaľ čo pre mnohé iné jazyky platia iné paradigmy. Webassembly je alternatívou k inak jedinému podporovanému jazyku v prehliadačoch - Javascriptu, ktorý je interpretovaný a preto nie veľmi primeraný pre aplikácie, ktoré sú závislé na vysokej efektívnosti a výkone.
Cieľom tejto práce je vykonať dôkladnú analýzu technológie Webassembly, prakticky vyskúšať rozličné jazyky, ktoré sú kompilovateľné do Webassembly a och kompilátory, analyzovať ich výhody a obmedzenia a charakterizovať ich vo vzájomnom porovnaní. Okrem toho študent navrhne jednoduchý jazyk, ktorý bude kompilovaný do Webassembly a jeho programy budú bežať vo webových prehliadačoch. Ide teda prevažne o prehľadovú prácu nasledovanú praktickým originálnym implementačným projektom.
týždeň 18.9-24.9 | skúmanie nových experimentálnych Wasm doplnkov SIMD, vektorové inštrukcie |
---|---|
týždeň 25.9-1.10 | optimalizácia wasm a js príkladu vytvorenie grafov na porovnanie |
týždeň 2.10-8.10 | detailné preskúmanie JWebassemly kompilátora lúštenie vygenerovaných wasm súborov |
týždeň 9.10-15.10 | rozbehanie TeaVM kompilátora praktické príklady, lúštenie vygenerovaných wasm súborov |
týždeň 16.10-22.10 | rozbehanie CheerpJ praktické pokusy |
týždeň 23.10-29.10 | rozbehanie Cheerp praktické príklady |
týždeň 30.10-5.11 | detailné preskúmanie Emscripten wasm kódy |
týždeň 6.11-12.11 | skúmanie možností na vytvorenie jazyka písanie práce |
týždeň 13.11-19.11 | skúmanie ANTLR4 zamyslenie sa nad jazykom a doménou písanie práce |
týždeň 20.11-26.11 | skúmanie Binaryen návrh jazyka písanie práce |
týždeň 27.11-3.12 | vytvorenie jednoduchého aritmetického jazyka doladenie jazyka písanie práce |
týždeň 4.12-10.12 | vytvorenie prezentácie písanie práce |
týždeň 13.2-19.2 | získanie základných informácii o WebAssembly vytvorenie webstránky k DP |
---|---|
týždeň 20.2-26.2 | skúmanie Wasm základná Wat syntax, modul, dátové typy, premenné, funkcie... |
týždeň 27.2-5.3 | skúmanie Wasm prepojenie s JavaScriptom, DOM |
týždeň 6.3-12.3 | skúmanie Wasm lineárna pamäť, canvas |
týždeň 13.3-19.3 | skúmanie Wasm thready, Web Workers |
týždeň 20.3-26.3 | vytvorenie komplexnejšieho príkladu vo Wat porovnanie s JavaScript verziou |
týždeň 27.3-2.4 | optimalizácia príkladu porovnanie s JavaSript verziou |
týždeň 3.4-9.4 | prehľad kompilátorov do Wasm |
týždeň 10.4-16.4 | Pyodide rozbehanie a praktické príklady |
týždeň 17.4-23.4 | JWebAssembly rozbehanie a praktické príklady |
týždeň 24.4-30.4 | Emscripten rozbehanie a praktické príklady |
týždeň 1.5-7.5 | skúmanie možností na vytvorenie jednoduchého jazyka, ktorý bude kompilovaný do Wasm |
týždeň 8.5-14.5 | vytvorenie prezentácie vytvorenie kostry DP |
december | kompilátory, novinky |
---|---|
január + február | implementácia jazyka + debug |
marec + apríl | kompilátory, wasm, novinky, písanie práce |
máj | písanie práce + odovzdanie |