Research topics

Research
  • This page gives you an overview of the various topics that are actively researched at the Software Languages Lab. The topics often overlap with each other, and many researchers are active in more than one topic.

Mobile Applications: Ambient & Context Oriented Programming

Mobile applications

The Copami group focuses on programming language research in Ambient-Oriented Programming (AmOP) and Context-Oriented Programming (COP). In AmOP, programs operate in mobile environments where connection failure is the rule rather than the exception, e.g. smart phones or tablets connected over a wifi network. This requires new programming techniques to reference and discover remote entities, abstractions to coordinate and interact with remote parties over volatile connections and finally, replication techniques to increase data availability. COP supports the development of adaptive applications which change their behaviour according to their context. COP treats context explicitly as all computationally accessible information that describes the environment of a program's execution. It provides mechanisms to dynamically adapt application behaviour in reaction to changes in context at runtime.

Go to Topic Page ...

Parallel Programming, Multicore Programming & Exascale Computing

Mesh of computing nodes

This theme focuses on language design and implementation for multi- and many-core platforms. We are interested in refining existing parallel programming models (actors, software transactional memory, data parallelism etc.) as well as optimizing virtual machines, interpreters and compilers. Additionally, we work on application-specific solutions, e.g., for quantum computing. What sets us apart is the fact that most of our research is done in the context of dynamic languages like e.g. Common Lisp and Smalltalk.

Furthermore, we host our own many-core lab. Thus, we are equipped with a wide range of different systems to experiment with state-of-the-art architectures to validate our research results.

Go to Topic Page ...

Model Driven Software Engineering

Model-driven software engineering

Model Driven Software Engineering (MDSE) promotes the use of models as primary driving assets in platform and language definition, software design and execution. Modeling allows for better management of large-scale and complex software systems, because models are scoped to specific concerns while abstracting from others. We advance the state-of-the-art in MDSE by conducting advanced research on software modeling enabling developers to model and implement software and to express and verify relevant properties of the software, and by conducting novel research providing efficient techniques and methods to transform, execute and monitor models, to co-evolve models and to check consistency between models.

Go to Topic Page ...

Code Analysis and Manipulation

Code visualisation

CAMP brings together people that are involved with the theory and practice of source code analysis and manipulation. It is highly artefact-driven with a solid theoretical foundation. This has given rise to various program query, transformation and visualization tools targeted at software maintenance and evolution.

Go to Topic Page ...


Virtual Machines

Turing machine

The research of this group focuses on the design and implementation of runtime systems (most prominently as virtual machines) and attempts to raise the level of abstraction at which these are defined. Within this theme, we are currently pursuing three concrete topics. Firstly, we question whether bytecodes are really essential to achieve VM performance, and examine whether abstract grammars are a realistic alternative; secondly, we work on modularization of virtual machines, to allow for variation of the runtime support underlying the interpreter; and thirdly, we attempt to increase the support for concurrency at the VM instruction level, for both shared- and non-shared-memory models.

Go to Topic Page ...

 
research/start.txt · Last modified: 21.06.2011 19:04 by dwagelaa
 

© 2012 • Software Languages Lab • Submit comments and bugs to our Bugzilla or to the webmaster