Call For Papers

Overview

Computer programming languages, especially object-oriented languages, are pervasive and play a significant role in computer science and engineering life and sometime appear as ubiquitous and completely mature. However, despite a large number of works, there still is a clear need for solutions for efficient implementation and compilation of OO languages in various application domains ranging from embedded and real-time systems to desktop systems.

The ICOOOLPS workshop thus aims to address this crucial issue of optimization, mainly but not only in OO languages, programs and systems. It intends to do so by bringing together researchers and practitioners working in the field of implementation and optimization, especially for object-oriented languages. Its main goals are identifying fundamental bases and key current issues pertaining to the efficient implementation, compilation and optimization of OO languages, and outlining future challenges and research directions.

An expected output of this workshop is a synthesis identifying fundamental bases and key current issues pertaining to the efficient implementation and compilation of OO languages, in order to spread them further amongst the various computing systems. It is also intended to extend this synthesis to encompass future challenges and research directions in the field of OO languages implementation and optimization, as well as non-OO languages.

Topics

Topics of interest for ICOOOLPS include but are not limited to:

    • implementation of fundamental OOL features:

        • inheritance (object layout, late binding, subtype test...)

        • genericity (parametric types)

        • memory management

    • run-time systems:

        • compilers

        • linkers

        • virtual machines

    • optimizations:

        • static and dynamic analyses

        • adaptive virtual machines

        • threads and synchronization

    • resource constraints:

        • real-time systems

        • embedded systems (space, low power)...

    • relevant choices and trade-offs:

        • constant time vs. non-constant time mechanisms

        • separate compilation vs. global compilation

        • dynamic loading vs. global linking

        • dynamic checking vs. proof-carrying code

        • annotations vs. no annotations

This workshop is obviously focusing on object-oriented languages, but also extends its domain of interest to functional languages and their optimisation. As a consequence, people working on JavaScript, Ruby, Python, Java, Smalltalk, Eiffel, Haskell, Beta, C++, C#, OCaml, F#, etc. are all welcome.