- Sponsor:
- sigplan
It is our great pleasure to welcome you to the 10th ACM SIGPLAN Erlang Workshop -- Erlang 2011, the annual forum for the presentation of research, theory, implementation, tools and applications of the Erlang programming language. This year's workshop continues the tradition of being co-located with the annual ACM SIGPLAN International Conference on Functional Programming (ICFP).
The call for papers attracted 14 submissions which were reviewed by at least three PC members. The program committee decided to accept 10 of these submissions as full papers and three more as posters. These papers and posters cover a variety of topics, including semantics, behavioral and distributed programming in Erlang, testing tools and test driven development, protocol implementations and language issues.
Proceeding Downloads
A decade of Yaws
Yaws -- "Yet Another Web Server" -- is a popular open source HTTP 1.1 Erlang web server known for its reliability and stability. Conceived by legendary Erlang programmer Claes "Klacke" Wikström in 2001, Yaws has evolved and matured over the past decade ...
Erlang ETS tables and software transactional memory: how transactions make ETS tables more like ordinary actors
This article describes a way to make the ETS tables of Erlang fit better into the actor programming model. Enhancing the interface of the ETS tables with a concept of transactions is suggested as a means both to achieve increased parallelism, better ...
Accelerating race condition detection through procrastination
Race conditions are notoriously frustrating to find, and good tools can help. The main difficulty is reliably provoking the race condition. In previous work we presented a randomising scheduler for Erlang that helps with this task.
In a language without ...
Typed callbacks for more robust behaviours
Behaviours are one of the most widely used features of Erlang/OTP. They offer a convenient and well-tested abstraction layer for frequently employed design patterns in concurrent Erlang programming. In effect, they allow programmers to focus on the ...
Model-based testing of data types with side effects
Data types are the core of many applications, and libraries offering implementations of data types should better be solid and well tested. Testing purely functional data types with QuickCheck provides a complete test method for data types, but ...
A PropEr integration of types and function specifications with property-based testing
We present a tight integration of the language of types and function specifications of Erlang with property-based testing. To achieve this integration we have developed from scratch PropEr, an open-source QuickCheck-inspired property-based testing tool. ...
Test-driven development of concurrent programs using concuerror
This paper advocates the test-driven development of concurrent Erlang programs in order to detect early and eliminate the vast majority of concurrency-related errors that may occur in their execution. To facilitate this task we have developed a tool, ...
Extracting QuickCheck specifications from EUnit test cases
Writing EUnit tests is more common than writing QuickCheck specifications, although QuickCheck specifications potentially explore far more scenarios than manually written unit tests. In particular for implementations that have side-effects, writing a ...
Testing a database for race conditions with QuickCheck
In 2009, Claessen et al. presented a way of testing for race conditions in Erlang programs, using QuickCheck to generate parallel tests, a randomizing scheduler to provoke races, and a sequential consistency condition to detect failures of atomicity [1]...
SFMT pseudo random number generator for Erlang
The stock implementation of Erlang/OTP pseudo random number generator (PRNG), random module, is based on an algorithm developed in 1980s called AS183, and has known statistic deficiencies for large-scale applications. Using modern PRNG algorithms with ...
Disco: a computing platform for large-scale data analytics
We describe the design and implementation of Disco, a distributed computing platform for MapReduce style computations on large-scale data. Disco is designed for operation in clusters of commodity server machines, and provides both a fault-tolerant ...
Implementation of sequence BDDs in Erlang
In this paper, we present an implementation of Erlang of an efficient index structure, called Sequence Binary Decision Diagrams (SeqBDDs), for knowledge discovery in large sequence data. Recently, Loekito, Bailey, and Pei (KAIS, 2009) proposed SeqBDD. ...
Interfacing dynamically typed languages and the why tool: reasoning about lists and tuples
Formal software verification is currently contributing to new generations of software systems that are proved to follow a given specification. Unfortunately, most dynamically typed languages lack the tools for such reasoning.
We present a tool used to ...
Modeling growth and dynamics of neural networks via message passing in Erlang: neural models have a natural home in message passing functional programming languages
Erlang is well suited as a platform for modeling neural dynamics and development. We overview similarities between neural architecture and language paradigms in Erlang, specifically functional programming, message passing, distributed computing and ...
Recommendations
Acceptance Rates
Year | Submitted | Accepted | Rate |
---|---|---|---|
Erlang '14 | 14 | 9 | 64% |
Erlang '13 | 15 | 12 | 80% |
Erlang '11 | 14 | 10 | 71% |
ERLANG '08 | 10 | 9 | 90% |
ERLANG '07 | 15 | 11 | 73% |
Overall | 68 | 51 | 75% |