Strange Loop

Next: September 12-14 2019

/

Stifel Theatre

/

St. Louis, MO

Ozma, an extension of Scala with Oz concurrency

Modern browsers provide sandboxed versions of many native system interfaces, such as graphics rendering and a filesystem. Thus in theory we should be able to replicate most of the desktop experience on the web -- except for the fact that a great deal of applications are not written in Javascript. Enabling the browser to run other languages would add whole classes of applications to the web platform.

Doppio is an effort to bring the JVM languages to the web by implementing a JVM in Coffeescript. While the JVM specification is technically language-agnostic, the original JVM is written in C and C++, and its architecture reflects that. We'll discuss some of the challenges of implementing the spec and porting the libraries to a high-level, non-systems language, particularly when it does not expose threads directly. We'll also talk about how NodeJS was invaluable for development.

Sébastien Doeraene

Université Catholique de Louvain

Sébastien Doeraene is a PhD student at the Université Catholique de Louvain, Belgium. His research is focused on the use of conflict-free replicated data types for large-scale distributed programming, from a language design point of view. He is the lead designer and developer of Ozma, an extension of Scala with Oz concurrency, as well as co-lead designer and developer of Mozart2, a new implementation of Oz. Outside of the programming language community, he was also the winner of the programming contest Prologin in 2010.