First Workshop on Domain Specific Languages Design and Implementation (DSLDI)

Monday, July 1st, 2013, Montpellier, France

Collocated with the European Conference on Object-Oriented Programming (ECOOP) 2013

Modern hardware is growing more and more complex, often featuring not only multiple cores but also heterogeneous components with various types of architecturally different accelerators. Consequently, it is increasingly more difficult for the programmers to produce high-performance scalable software, which is often equally complex, using general-purpose programming languages such as Java or C++, as they lack appropriate language-level abstractions. Languages designed to support high productivity, such as scripting languages exemplified by Python, JavaScript or Perl, make the programmer's task much easier. Their performance, however, while certainly adequate for some use cases, is not quite on-par with that of the general-purpose programming languages. Domain Specific Languages (DSLs) combine the best features of the general-purpose programming languages, that is efficiency, and of the languages designed for high productivity, that is ease of programming. This makes DSLs our best hope for harnessing computational resources available on modern architectures without requiring super-human programming skills.

The goal of the DSLDI workshop is to bring together researchers and practitioners interested in sharing ideas on how Domain Specific Languages should be designed and implemented and on usage scenarios for modern DSLs. We are interested both in discovering how already known domains, such as graph processing or machine learning, can be best supported by DSLs but also in exploring new domains that could be targeted by DSLs. More generally, we are interested in building a community that can drive forward development of modern DSLs.

The workshop will consist of a series of short invited talks whose main goal would be to trigger exchange of opinion and discussions on the topics within DSLDI's area of interest which include but are not limited to the following ones:

  • DSL implementation techniques, including compiler-level and runtime-level solutions
  • utilization of domain knowledge for driving optimizations of DSL implementations
  • utilizing DSLs for managing parallelism and hardware heterogeneity
  • DSL performance and scalability studies
  • DSL tools, such as DSL editors and editor plugins, debuggers, refactoring tools, etc.
  • applications of DSLs to existing as well as emerging domains, for example graph processing, image processing, machine learning, analytics, robotics, etc.
  • practitioners reports, for example descriptions of DSL deployment in a real-life production setting

The workshop will be informal and will not have proceedings of any kind.  We have a limited number of presentation slots so we welcome suggestions for people to give talks about their experience of using or developing DSLs.  If you would like to give a presentation then please contact Adam Welc at adam.welc@oracle.com (presentation submission deadline: April 26th, 2013).

Organizing committee:

Hassan Chafi, Oracle Labs
Tim Harris, Oracle Labs
Kunle Olukotun, Stanford University
Satnam Singh, Google
Laurence Tratt, King's College London
Eelco Visser, Delft University of Technology
Adam Welc, Oracle Labs