Towards Language Composition
- đ¤ Speaker: Laurence Tratt, King's College London đ Website
- đ Date & Time: Friday 24 January 2014, 14:00 - 15:00
- đ Venue: SS03
Abstract
We want better programming languages, but “better” invariably ends up becoming “bigger”. Since we can’t keep making our languages bigger, what alternatives do we have? In this talk, I propose language composition as a possible solution to this long standing problem. Language composition means merging two languages and allowing them to be used together. At its most fine-grained, this could allow multiple programming languages to be used together within a single source file.
However, language composition is not a new idea. It has failed in the past because editing composed programs was intolerably difficult and the resulting programs ran too slow to be usable. Without good solutions to these problems, language composition will remain an unrealised ideal.
In this talk, I will show how the work we are doing in the Software Development Team is beginning to address both aspects. We have built a prototype editor utilising a novel concept ‘language boxes’, which allows one to edit composed programs in a natural way, without the limitations of traditional approaches. We are tackling the performance problem by composing together interpreters using meta-tracing, allowing us to build composed VMs with custom JITs that naturally optimise across different language’s run-times. While we are much nearer the beginning of the journey than the end, our initial research has allowed us to build a simple composition of two very different languages: Python and Prolog.
Joint work with Edd Barrett, Carl Friedrich Bolz, Lukas Diekmann, and Krishnan Vasudevan. More details at http://soft-dev.org/
Series This talk is part of the Computer Laboratory Programming Research Group Seminar series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge talks
- Computer Laboratory Programming Research Group Seminar
- Department of Computer Science and Technology talks and seminars
- Interested Talks
- School of Technology
- SS03
- Trust & Technology Initiative - interesting events
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)

Laurence Tratt, King's College London 
Friday 24 January 2014, 14:00-15:00