Ebook: Datatype-Generic Programming: International Spring School, SSDGP 2006, Nottingham, UK, April 24-27, 2006, Revised Lectures
- Genre: Computers // Organization and Data Processing
- Tags: Programming Techniques, Programming Languages Compilers Interpreters, Software Engineering, Data Structures, Logics and Meanings of Programs
- Series: Lecture Notes in Computer Science 4719 : Theoretical Computer Science and General Issues
- Year: 2007
- Publisher: Springer-Verlag Berlin Heidelberg
- Edition: 1
- Language: English
- pdf
A leitmotif in the evolution of programming paradigms has been the level and extent of parametrisation that is facilitated — the so-called genericity of the paradigm. The sorts of parameters that can be envisaged in a programming language range from simple values, like integers and ?oating-point numbers, through structured values, types and classes, to kinds (the type of types and/or classes).Datatype-generic programming is about parametrising programsby the structure of the data that they manipulate. Toappreciatethe importanceofdatatypegenericity,oneneedlooknofurther than the internet. The internet is a massive repository of structured data, but the structure is rarely exploited. For example, compression of data can be much more e?ective if its structure is known, but most compression algorithms regard the input data as simply a string of bits, and take no account of its internal organisation. Datatype-genericprogrammingisaboutexploitingthestructureofdatawhen it is relevant and ignoring it when it is not. Programming languages most c- monly used at the present time do not provide e?ective mechanisms for do- menting and implementing datatype genericity. This volume is a contribution towards improving the state of the art. The emergence of datatype genericity can be traced back to the late 1980s.
This tutorial book presents six carefully revised lectures given at the Spring School on Datatype-Generic Programming, SSDGP 2006, held in Nottingham, UK, in April 2006, colocated with the Symposium on Trends in Functional Programming (TFP 2006), and the Conference of the Types Project (TYPES 2006). All the lectures have been subjected to thorough internal review by the editors and contributors, supported by independent external reviews.
The volume is opened with a comprehensive assessment of different sorts of parametrisation mechanisms in programmming languages, including how they are implemented, leading up to the notion of datatype genericity. After the introduction of datatype-generic programming the volume contains the following topical chapters: comparing approaches to generic programming in Haskell; generic programming, now; generic programming with dependent types; generic programming in Omega; and revealing the X/O impedance mismatch.