- Sponsor:
- sigplan
It is our great pleasure to welcome you to the ACM SIGPLAN Workshop on Generic Programming 2009 - WGP 2009, held in Edinburgh, UK, on 30th August 2009. The workshop is sponsored by ACM SIGPLAN and is affiliated with the 14th ACM SIGPLAN International Conference on Functional Programming (ICFP 2009). Previous Workshops on Generic Programming have been held in Marstrand (affiliated with MPC), Ponte de Lima (affiliated with MPC), Nottingham (informal workshop), Dagstuhl (IFIP TC2/IFIP WG2.1 Working Conference), Oxford (informal workshop), Utrecht (informal workshop), Portland (affiliated with ICFP), and Victoria (affiliated with ICFP).
The call for papers generated 14 submissions. Each paper was evaluated by at least three members of the programme committee with the help of additional reviewers. During a five-day virtual meeting, the programme committee selected 8 papers for presentation at the workshop. The papers cover a variety of generic programming topics, including staging, aspects, component frameworks, parametricity and dependent types. We hope that the proceedings will serve as a valuable reference for both researchers and students.
Proceeding Downloads
Polytypic properties and proofs in Coq
We formalize proofs over Generic Haskell-style polytypic programs in the proof assistant Coq. This makes it possible to do fully formal (machine verified) proofs over polytypic programs with little effort. Moreover, the formalization can be seen as a ...
Adaptable component frameworks: using vector from the C++ standard library as an example
The CPH STL is a special edition of the STL, the containers and algorithms part of the C++ standard library. The specification of the generic components of the STL is given in the C++ standard. Any implementation of the STL, e.g. the one that ships with ...
The function concept in C++: an empirical study
Higher-order functions are essential for generic programming. While they are naturally supported in functional programming languages, there are no higher-order functions in C++. There, various function datatypes exist that simulate the effect of higher-...
What does aspect-oriented programming mean for functional programmers?
Aspect-Oriented Programming (AOP) aims at modularising crosscutting concerns that show up in software. The success of AOP has been almost viral and nearly all areas in Software Engineering and Programming Languages have become "infected" by the AOP bug ...
Type-specialized staged programming with process separation
Staging is a powerful language construct that allows a program at one stage to manipulate and specialize a program at the next. We propose ML as a new staged calculus designed with novel features for staged programming in modern computing platforms such ...
Type-safe diff for families of datatypes
The UNIX diff program finds the difference between two text files using a classic algorithm for determining the longest common subsequence; however, when working with structured input (e.g. program code), we often want to find the difference between ...
Meeting a fanclub: a lattice of generic shape selectors
The "fan" of a datatype F is a relation that holds between a value x and an arbitrary F structure in which the only stored value is x. Fans make precise the notion of the shape of a data structure. We formulate two different representations of shape ...
Parametric datatype-genericity
Datatype-generic programs are programs that are parametrized by a datatype or type functor: whereas polymorphic programs abstract from the "integers" in "lists of integers",datatype-generic programs abstract from the "lists of". There are two main ...
- Proceedings of the 2009 ACM SIGPLAN workshop on Generic programming