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.