Dynamic compilation is a mechanism used by modern programming language implementations such as Java or
Python to optimize running applications. The goal of the seminar is to introduce students to the advantages and
pitfalls of dynamic compilation. The seminar will focus on practical work with GraalVM.
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)
Dynamický překlad je mechanismus, kterým moderní implementace programovacích jazyků jako Java nebo
Python optimalizují běžící aplikace. Cílem semináře je seznámit posluchače s výhodami a problémy dynamického
překladu. Seminář bude veden praktickou formou v prostředí GraalVM.
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)
Literature -
http://www.graalvm.org
Thomas Würthinger, Christian Wimmer, Christian Humer, Andreas Wöß, Lukas Stadler, Chris Seaton, Gilles Duboscq, Doug Simon, and Matthias Grimmer. 2017. Practical partial evaluation for high-performance dynamic language runtimes. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2017). ACM, New York, NY, USA, 662-676. DOI: https://doi.org/10.1145/3062341.3062381
Matthias Grimmer, Chris Seaton, Roland Schatz, Thomas Würthinger, and Hanspeter Mössenböck. 2015. High-performance cross-language interoperability in a multi-language runtime. In Proceedings of the 11th Symposium on Dynamic Languages (DLS 2015). ACM, New York, NY, USA, 78-90. DOI=http://dx.doi.org/10.1145/2816707.2816714
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)
http://www.graalvm.org
Thomas Würthinger, Christian Wimmer, Christian Humer, Andreas Wöß, Lukas Stadler, Chris Seaton, Gilles Duboscq, Doug Simon, and Matthias Grimmer. 2017. Practical partial evaluation for high-performance dynamic language runtimes. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2017). ACM, New York, NY, USA, 662-676. DOI: https://doi.org/10.1145/3062341.3062381
Matthias Grimmer, Chris Seaton, Roland Schatz, Thomas Würthinger, and Hanspeter Mössenböck. 2015. High-performance cross-language interoperability in a multi-language runtime. In Proceedings of the 11th Symposium on Dynamic Languages (DLS 2015). ACM, New York, NY, USA, 78-90. DOI=http://dx.doi.org/10.1145/2816707.2816714
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)
Syllabus -
1. GraalVM architecture.
2. Graal compiler, IGV. AOT vs JIT.
3. JVM, language interoperability.
4. Debugging, profiling, code coverage, language server protocol.
5. Static languages, LLVM.
6. Real language overview.
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)
1. Architektura GraalVM.
2. Graal compiler, IGV. AOT vs JIT.
3. JVM, language interoperability.
4. Debugging, profiling, code coverage, language server protocol.
5. Static languages, LLVM.
6. Real language overview.
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (04.02.2019)