|Title:||Adding Concurrency to an Evidence-based Programming Language|
|Conference:||Communicating Process Architectures 2014|
Andreas Stefik, Jan Bækgaard Pedersen
Department of Computer Science, University of Nevada Las Vegas
In the last five years, programming language designers have increasingly investigated data-driven methods for studying the impact of competing designs. This approach has led to an imperfect, but objective, methodology for studying the long-standing programming language wars. To-date, a variety of questions have been increasingly studied using this approach. For example, there is now scientific, peer-reviewed, evidence that static typing improves human productivity (under known conditions). Further, differences in syntax appear to impact humans much more than was once thought.
While data-driven methods have provided an objective filter for evaluating language design, how to apply them to concurrency is not clear. On the one hand, syntax might have an impact in this area, but to whom is unclear. On the other, fundamental design differences may also be impactful, like software transactional memory vs. threads or process-oriented approaches, but questions about paradigm can often be too broad to test easily in a small number of experiments. In this talk, we discuss data-driven methods in language design and how they can potentially be applied to concurrency. The goal is not to establish a particular approach, but to garner feedback from the community on potential experimental designs, with an eye toward focusing efforts toward questions the community would find valuable.