- Sponsor:
- sigplan
It is our great pleasure to welcome you to Tucson and the 2012 Dynamic Languages Symposium! This year's symposium -- the 8th in the series -- continues the tradition of communicating research results in the design, implementation, and application of dynamic languages.
We are happy to report that the overall quality of this year's submissions was particularly high. Out of a total of 23 submissions, the program committee accepted 10 papers whose topics range from modularity to pattern matching, language semantics, and optimization. The program also includes an invited talk by David Smith on the Virtual World Framework, a new architecture for creating and distributing collaborative virtual spaces that's built on top of JavaScript and other Web technologies.
Beyond the formal program, we hope this year's DLS will, like its predecessors, be a valuable forum for sharing ideas with other dynamic language researchers and practitioners from institutions around the world. Thank you for being part of this exciting community, and once again, welcome!
Proceeding Downloads
A tested semantics for getters, setters, and eval in JavaScript
We present S5, a semantics for the strict mode of the ECMAScript 5.1 (JavaScript) programming language. S5 shrinks the large source language into a manageable core through an implemented transformation. The resulting specification has been tested ...
Patterns as objects in grace
Object orientation and pattern matching are often seen as conflicting approaches to program design. Object-oriented programs place type-dependent behavior inside objects and invoke it via dynamic dispatch, while pattern-matching programs place type-...
Robust scripting via patterns
Dynamic typing in scripting languages is a two-edged sword. On the one hand, it can be more flexible and more concise than static typing. On the other hand, it can lead to less robust code. We argue that patterns can give scripts much of the robustness ...
Object-oriented programming with gradual abstraction
We describe an experimental object-oriented programming language, ASL2, that supports program development by means of a series of abstraction steps. The language allows immediate object construction, and it is possible to use the constructed objects for ...
Adaptive data parallelism for internet clients on heterogeneous platforms
Today's Internet is long past static web pages filled with HTML-formatted text sprinkled with an occasional image or animation. We have entered an era of Rich Internet Applications executed locally on Internet clients such as web browsers: games, ...
Loop-aware optimizations in PyPy's tracing JIT
One of the nice properties of a tracing just-in-time compiler (JIT) is that many of its optimizations are simple, requiring one forward pass only. This is not true for loop-invariant code motion which is a very important optimization for code with tight ...
Self-optimizing AST interpreters
An abstract syntax tree (AST) interpreter is a simple and natural way to implement a programming language. However, it is also considered the slowest approach because of the high overhead of virtual method dispatch. Language implementers therefore ...
Ownership, filters and crossing handlers: flexible ownership in dynamic languages
Sharing mutable objects can result in broken invariants, exposure of internal details, and other subtle bugs. To prevent such issues, it is important to control accessibility and aliasing of objects. Dynamic Ownership is an effective way to do so, but ...
Detecting conflicts among declarative UI extensions
We examine overlays, a flexible aspect-like mechanism for third-party declarative extensions of declarative UIs. Overlays can be defined for any markup language and permit extensions to define new content that is dynamically woven into a base UI ...
CoExist: overcoming aversion to change
Programmers make many changes to the program to eventually find a good solution for a given task. In this course of change, every intermediate development state can of value, when, for example, a promising ideas suddenly turn out inappropriate or the ...