05.08.2014 Views

here - Stefan-Marr.de

here - Stefan-Marr.de

here - Stefan-Marr.de

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

1.3. Research Goals<br />

1.3. Research Goals<br />

The thesis of this dissertation is:<br />

T<strong>here</strong> exists a relevant and significant subset of concurrent and parallel<br />

programming concepts that can be realized on top of a unifying substrate.<br />

This substrate enables the flexible <strong>de</strong>finition of language semantics that<br />

build on the i<strong>de</strong>ntified set of concepts, and this substrate lends itself to an<br />

efficient implementation.<br />

This dissertation pursues the following research goals in support of this<br />

thesis:<br />

I<strong>de</strong>ntify a Set of Requirements First, this dissertation has to examine how<br />

concurrency and parallelism are supported in VMs today, how the un<strong>de</strong>rlying<br />

concepts for concurrent and parallel programming relate to<br />

each other, and which problems occur when building higher-level abstractions<br />

on top of today’s VMs. The resulting un<strong>de</strong>rstanding of the<br />

state of the art and common problems enable the establishment of a set<br />

of requirements that gui<strong>de</strong> the implementation of such concepts on top<br />

of a VM.<br />

Define a Unifying Substrate Based on the set of requirements i<strong>de</strong>ntified in<br />

the first step, this dissertation has to <strong>de</strong>fines an abstraction that can<br />

serve as a unifying substrate for the implementation of a significant subset<br />

of concurrent and parallel programming concepts. This abstraction<br />

has to enable library and language implementers to customize semantics<br />

and guarantees for the programming concepts they want to provi<strong>de</strong>,<br />

while preserving acceptable performance. Since complexity is an in<strong>here</strong>nt<br />

issue for VM implementations, the abstraction has to <strong>de</strong>monstrate<br />

unifying characteristics. Thus, it has to generalize over a set of programming<br />

concepts to achieve abstraction, while avoiding adding in<strong>de</strong>pen<strong>de</strong>nt,<br />

i. e., separate, support for each of the programming concepts to<br />

the VM.<br />

Demonstrate Applicability This dissertation has to <strong>de</strong>monstrate the applicability<br />

of the proposed unifying substrate as an extension to high-level<br />

language VMs in or<strong>de</strong>r to show its benefits for building multi-language<br />

runtimes. The evaluation is based on the implementation of common<br />

abstractions for concurrent programming on top of the proposed substrate.<br />

The goal is to show the substrate’s potential compared to classic<br />

5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!