ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague 1, Czech Republic

Welcome to the 1st Truffle/Graal Languages Workshop

In recent years we have observed a change in the way people think about implementing programming languages. In the past, an implementation of a given language was monolithic, with all the components, such as the runtime, compiler or memory management subsystem, developed from scratch. With the appearance of Java, developers of other languages started targeting its bytecode format in order to re-use high-performance services provided by Java virtual machines. Evolution of these ideas has resulted in the creation of a specialized open-source Java-based language implementation toolkit, consisting of the Graal optimizing compiler and Graal’s multi-language framework, Truffle. The toolkit facilitates the creation of high-performance language implementations using partial evaluation of self-specializing interpreters and attempts to rectify some of the limitations of previous approaches. In particular, it circumvents possible mismatches between “guest” language semantics and “host” bytecodes. It is rapidly gaining popularity in both industry and academia as a foundation for guest languages (e.g., JavaScript, Ruby, Python, R and others).

The goal of this full day workshop is to attract programming language developers interested in using Truffle and Graal for creating programming language implementations and tools, as well as, more broadly, developers interested in discussing language implementation approaches heavily relying on dynamic profiling feedback and specialization. The workshop is meant to be a forum where language developers can learn about Truffle and Graal, share their experience using the toolkit, identify potential limitations and discuss methods of rectifying them, as well as propose future directions for the development of Truffle languages tooling support and of the toolkit itself. We are especially interested in attracting participation of language developers that are not yet familiar with Truffle or Graal but are interested in exploring how they can simplify development of their own current or future projects.

The workshop will be divided into two segments. The morning segment will consist of a number of short talks and discussions led by experienced language developers, and is aimed at introducing Truffle and Graal as well as sharing experience implementing Truffle languages. The afternoon segment is aimed at providing support for developers planning to jump-start their own projects using Truffle or contributing to one of the existing Truffle-based implementations, as well as discussing how the Truffle platform can be used for programming language research. This segment will start with a hands-on tutorial, and experienced Truffle language developers as well as members of the Truffle/Graal core team will also be available for individual/group mentoring and/or coding sessions.

Tue 7 Jul

Truffle-2015-papers
10:05 - 10:20: Truffle - Welcome at Bohemia III
Chair(s): Thomas Wuerthinger, Adam Welc, Mario Wolczko
Truffle-2015-papers143625630000010:05 - 10:20
Day opening
Truffle-2015-papers
10:20 - 12:25: Truffle - Session 1 at Bohemia III
Truffle-2015-papers143625720000010:20 - 10:45
Talk
Truffle-2015-papers143625870000010:45 - 11:10
Talk
Truffle-2015-papers143626020000011:10 - 11:35
Talk
Truffle-2015-papers143626170000011:35 - 12:00
Talk
Truffle-2015-papers143626320000012:00 - 12:25
Talk
Truffle-2015-papers
12:25 - 12:35: Truffle - Discussion 1 at Bohemia III
Truffle-2015-papers143626470000012:25 - 12:35
Other
Truffle-2015-papers
13:50 - 15:30: Truffle - Session 2 at Bohemia III
Truffle-2015-papers143626980000013:50 - 14:15
Talk
Truffle-2015-papers143627130000014:15 - 14:40
Talk
Truffle-2015-papers143627280000014:40 - 15:05
Talk
Truffle-2015-papers143627430000015:05 - 15:30
Talk
Truffle-2015-papers
15:30 - 15:40: Truffle - Discussion 2 at Bohemia III
Truffle-2015-papers143627580000015:30 - 15:40
Other
Truffle-2015-papers
16:10 - 18:15: Truffle - Session 3 at Bohemia III
Truffle-2015-papers143627820000016:10 - 16:35
Talk
Truffle-2015-papers143627970000016:35 - 17:00
Talk
Truffle-2015-papers143628120000017:00 - 17:25
Talk
Truffle-2015-papers143628270000017:25 - 17:50
Talk
Truffle-2015-papers143628420000017:50 - 18:15
Talk

Call For Participation

We solicit discussion topic proposals, describing both ongoing and future projects, in the form of extended (1-3 page) abstracts. The discussion topics include but are not limited to the following areas:

  • Case studies of existing Truffle language implementations.
  • Comparing alternative language implementation techniques to Truffle.
  • Performance analysis and/or optimizations for Truffle language implementations.
  • Tooling support for Truffle languages.
  • Infrastructure-level optimizations and extensions that can benefit languages built with Truffle.
  • New research project proposals utilizing Truffle and/or Graal.

Depending on the number of accepted submissions, we expect topics to cover between 30 minutes and 60 minutes time slots at the workshop. All proposals should be submitted by email to Adam Welc

  • deadline for proposal submissions: April 23, 2015 (by 11:59 PM AoE)
  • notification: May 1, 2015

Participants with accepted proposals may ask for financial support to cover travel costs. The financial support is optional and its total amount, if any, will be determined by the organizing committee. Please indicate if financial support is being requested as part of the submission.

Important Dates
Tue 7 Jul 2015
Workshop
Fri 1 May 2015
Notification
Thu 23 Apr 2015
Deadline for proposal submissions