Listopadové setkání Pražské Czech Java User Group proběhne v pondělí 9.11. od 19h v posluchárně S5 na Matematicko-fyzikální fakultě Karlovy Univerzity na Malostranském náměstí 25, Praha 1. Čeká nás prezentace Nebezpečí paralelních streamů (Lukáš Křečan, GoodData)a One VM To Rule Them All (Thomas Wuerthinger, Oracle). Vstup na akce CZJUGu je zdarma, a není třeba se předem registrovat. Pokud se chystáte přijít, dejte nám vědět formou hlasování v anketě na hlavní stránce portálu java.cz.

Nebezpečí paralelních streamů

Paralelní streamy v Javě 8 jsou skvělé. Stačí jenom zavolat metodu parallel() a váš kód běží mnohem rychleji. Nebo snad ne? Víte jaký thread pool se použije? Víte co se stane když jsou všechna vlákna zaneprázdněna nebo zablokována? Víte jak zajistit, že se paralelní operace nezasekne?

V této prezentaci si krátce představíme fork-join framework a to jak je použit v paralelních streamech. Ukážeme si i pár vizualizací, které nám pomohou si představit jak to všechno funguje. Hlavní část přednášky budou tvořit nevinně vypadající příklady ilustrující nebezpečí paralelních streamů, které vás snad přesvědčí si na ně dát pozor.

One VM To Rule Them All

Running a multitude of programming languages is a common requirement for large scale applications. This talk presents a virtual machine architecture that allows to handle different programming languages and their interoperability while not sacrificing performance. It bases on partial evaluation of AST interpreters to automatically derive compiled code. A prototype of this architecture has been developed as part of the Graal OpenJDK project (http://openjdk.java.net/projects/graal/) as well as the TruffleRuby, ZipPy, and FastR open source projects. The talk will be about the general principles behind our VM, special aspects of the Ruby, Python, and R implementations, and our vision for making language interoperability work efficiently.

Thomas Wuerthinger is Research Director at Oracle Labs Switzerland and leading programming language implementation teams for languages including Java, JavaScript, Ruby, and R. He is the architect of the Graal compiler and the Truffle self-optimizing runtime system. Previously, he worked on the Crankshaft optimizing compiler of V8 at Google, and the Maxine research virtual machine at Sun Microsystems. He received a PhD degree from JKU Linz for his research about dynamic code evolution.