- Sponsor:
- sigplan
Welcome to the 1st ACM SIGPLAN Haskell Symposium -- Haskell'08. The Haskell Symposium continues in the tradition of the Haskell Workshops; a forum for discussing experiences with Haskell, and exploring possible future developments for the language, including all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell. The name change reflects the steady increase of influence of the Haskell Workshop on the wider community, as well as sustained high quality submissions making the acceptance process highly competitive.
The call for papers attracted 28 submissions. Each paper was given to three members to review, and in several cases additional reviews were solicited. The submissions were discussed during a 5 day virtual PC meeting using easychair, and the Program Committee selected ten submissions for presentation and publication in these proceedings.
Proceeding Downloads
Lightweight monadic regions
We present Haskell libraries that statically ensure the safe use of resources such as file handles. We statically prevent accessing an already closed handle or forgetting to close it. The libraries can be trivially extended to other resources such as ...
A library for light-weight information-flow security in haskell
Protecting confidentiality of data has become increasingly important for computing systems. Information-flow techniques have been developed over the years to achieve that purpose, leading to special-purpose languages that guarantee information-flow ...
Haskell session types with (almost) no class
We describe an implementation of session types in Haskell. Session types statically enforce that client-server communication proceeds according to protocols. They have been added to several concurrent calculi, but few implementations of session types ...
Smallcheck and lazy smallcheck: automatic exhaustive testing for small values
This paper describes two Haskell libraries for property-based testing. Following the lead of QuickCheck, these testing libraries SmallCheck and Lazy SmallCheck also use type-based generators to obtain test-sets of finite values for which properties are ...
Not all patterns, but enough: an automatic verifier for partial but sufficient pattern matching
We describe an automated analysis of Haskell 98 programs to check statically that, despite the possible use of partial (or non-exhaustive) pattern matching, no pattern-match failure can occur. Our method is an iterative backward analysis using a novel ...
Yi: an editor in haskell for haskell
Yi is a text editor written in Haskell and extensible in Haskell. We take advantage of Haskell's expressive power to define embedded DSLs that form the foundation of the editor. In turn, these DSLs provide a flexible mechanism to create extended ...
Haskell, do you read me?: constructing and composing efficient top-down parsers at runtime
The Haskell definition and implementation of read is far from perfect. In the first place read is not able to handle the associativities defined for infix operators. Furthermore, it puts constraints on the way show is defined, and especially forces it ...
Shared subtypes: subtyping recursive parametrized algebraic data types
A newtype declaration in Haskell introduces a new type renaming an existing type. The two types are viewed by the programmer as semantically different, but share the same runtime representation. When operations on the two semantic views coincide, the ...
Language and program design for functional dependencies
Eight years ago, functional dependencies, a concept from the theory of relational databases, were proposed as a mechanism for avoiding common problems with multiple parameter type classes in Haskell. In this context, functional dependencies give ...
Making monads first-class with template haskell
Monads as an organizing principle for programming and semantics are notoriously difficult to grasp, yet they are a central and powerful abstraction in Haskell. This paper introduces a domain-specific language, MonadLab, that simplifies the construction ...
Comparing libraries for generic programming in haskell
Datatype-generic programming is defining functions that depend on the structure, or "shape", of datatypes. It has been around for more than 10 years, and a lot of progress has been made, in particular in the lazy functional programming language Haskell. ...
Clase: cursor library for a structured editor
The zipper is a well known design pattern for providing a cursor-like interface to a data structure. However, the classic treatise by Huet (1) only scratches the surface of some of the potential applications of the zipper. In this work we have taken ...
Haskell: batteries included
The quality of a programming language itself is only one component in the ability of application writers to get the job done. Programming languages can succeed or fail based on the breadth and quality of their library collection. Over the last few years,...
Cited By
-
Mista A and Russo A (2020). BinderAnn: Automated Reification of Source Annotations for Monadic EDSLs Trends in Functional Programming, 10.1007/978-3-030-57761-2_2, (25-46),
-
CHENEY J and MOMIGLIANO A (2017). αCheck: A mechanized metatheory model checker, Theory and Practice of Logic Programming, 10.1017/S1471068417000035, 17:03, (311-352), Online publication date: 1-May-2017.
Recommendations
Acceptance Rates
| Year | Submitted | Accepted | Rate |
|---|---|---|---|
| Haskell '14 | 28 | 12 | 43% |
| Haskell '13 | 33 | 13 | 39% |
| Haskell '08 | 28 | 13 | 46% |
| Haskell '03 | 30 | 10 | 33% |
| Haskell '02 | 24 | 9 | 38% |
| Overall | 143 | 57 | 40% |




