|
<<< Previous speaker
|
next speaker >>>
|
Peter Van Roy, Professor at Université catholique de Louvain
Peter Van Roy is coauthor of the classic programming textbook "Concepts,
Techniques, and Models of Computer Programming" and professor at the
Université catholique de Louvain in Belgium. His group hosts the Mozart
Programming System, with which he explores how programming languages can
simplify distributed programming. In a previous century, he wrote the
Aquarius Prolog compiler, the first to generate code competitive in
performance with C compilers, and the Macintosh application
FractaSketch, the first to allow true graphic design based on fractal
geometry. He received a M.S. and Ph.D. in Computer Science from the
University of California at Berkeley and a French "Habilitation à
Diriger des Recherches" from the Université Paris Diderot (Paris 7).
|
Presentation: "Ozma: Extending Scala with Oz Concurrency"
Time:
Friday 15:35 - 16:35
Location:
Olympic
Abstract:
This talk is a hands-on presentation of concurrent programming in Ozma,
an extension of Scala that adds the concurrency features of Oz. Ozma
is based on deterministic dataflow concurrency. This is extremely
simple: 'val' variables in Ozma are single assignment and all operations
can synchronize on this assignment. This extension has the incredible
property that race conditions are impossible. Combined with lightweight
threads, deterministic dataflow makes concurrent programming effortless;
it is much simpler than any other model we know of. In addition, Ozma
integrates both lazy execution and message passing with the dataflow
concurrency. The Ozma design combines two pillars of advanced
technology, namely Scala and Oz. Scala is based on Java technology and
integrates object-oriented and functional features in a smooth way (see
http://www.scala-lang.org). Oz is a research language that has explored
language simplicity and power for over 20 years (see
http://ctm.info.ucl.ac.be and http://www.mozart-oz.org). All necessary
information to install and run Ozma is available on GitHub (see
https://github.com/sjrd/ozma).
|
 |
|