Bergen Language Design Laboratory (BLDL)
Language provides us with means of expressing ideas, as well as a vehicle through which ideas evolve.
The Bergen Language Design Laboratory is dedicated to experimenting with software concepts and providing these as tool-supported language constructs. The constructs can be in the form of targeted domain specific languages or embedded in full-fledged modelling, specification or programming languages. Such experiments requires both language tools and a formal basis for the constructs. The latter may significantly simplify the former.
Language experimentation is important in nailing down ideas for software concepts, and it also provides the means for gaining experience with these ideas in practice.
New ideas in this direction are needed to meet current challenges, e.g., safety issues for internet applications, clarity of business logic embedded in code, efficiency for high-performance applications, portability of software between multi-core and other architectures, quality of autonomous computing devices, and power consumption for computer game consoles.
The laboratory fosters an interaction between software development activities and language experimentation, in order to get feedback on how constructs function in practice - and also to get inspiration for new ideas.
BLDL's purpose is to do basic research and training of researchers in the design, implementation, description and specification of programming languages. Research areas include parsing, analysis, transformation, optimisation, and the design of novel language features.
To achieve these goals, BLDL will
- educate students (bachelor, masters and PhD) in the areas of language engineering and use of modern language implementation and transformation technology,
- cooperate with industry in solving engineering problems through the use of language technology and domain-specific languages, and
- coordinate closely with international research partners through projects and exchange of staff and students.
- Professor Magne Haveraaen, BLDL head
- Dr Anya Helene Bagge, associate professor
- Professor Jaakko Järvi
- Benjamin Chetioui, PhD student
- Dr Eva Burrows (PhD, postdoc – now at MathWorks, Glasgow, UK)
- Dr Valentin David (PhD, researcher – now at vizrt)
- Adis Hodzic (PhD student, now at Høgskulen på Vestlandet)
- Tero Hasu (PhD — independent software developer)
- Dr Karl Trygve Kalleberg (PhD – now CEO/Co-founder of KolibriFX)
- Dr Joseph Young (postdoc – now at Sandia National Labs)
Mouldable Programming, the idea that software can be moulded to achieve its purpose, including testing tools for Java (JAxT) and C++.
Multicore Programming Models for architectures like IBM's cell-processor (also in PlayStation3) and graphics processors (GPUs), but also emerging many- and massive-core processors.
SAGA (Scientific computing and algebraic abstractions) for high performance computing.
Data Dependency Algebra based programming for massively parallel architectures, including multicore.
Magnolia Programming Language, for experimenting with all of the above ideas.
BLDL is part of Department of informatics, University of Bergen. BLDL PhD students are part of the department's ICT research school.
Limit Point Systems, Livermore, California, USA
Dr. Anne C. Elster
Computer and Info. Science, IDI/NTNU HPC Lab, Norges teknisk-naturvitenskapelige universitet, Trondheim, Norway
Dr. Helmer André Friis
IRIS - International Research Institute of Stavanger, Stavanger, Norway.
Schlumberger Information Solutions
Schlumberger Norway Technology Centre, Norway.
Professor Mary Sheeran
Computer Science and Engineering Department, Chalmers University of Technology, Sweden
Dr. Eelco Visser
The Software Engineering Research Group, Department of Software Technology, Faculty of Electrical Engineering, Mathematics, and Computer Science, Delft University of Technology, The Netherlands
EU COST Action IC0805: Open European Network for High Performance Computing on Complex Environments From 2009-05-07 to 2013-07-06.
ICT COST Action IC1305: Network for Sustainable Ultrascale Computing (NESUS) From 2014-03-28 to 2018-03-27.