Advertisement

Generic and Indexed Programming

International Spring School, SSGIP 2010, Oxford, UK, March 22-26, 2010, Revised Lectures

  • Jeremy Gibbons

Part of the Lecture Notes in Computer Science book series (LNCS, volume 7470)

Table of contents

  1. Front Matter
  2. Nate Foster, Kazutaka Matsuda, Janis Voigtländer
    Pages 1-46
  3. Ralf Hinze
    Pages 47-129
  4. Oleg Kiselyov
    Pages 130-174
  5. Jeremy G. Siek
    Pages 175-216
  6. Stephanie Weirich, Chris Casinghino
    Pages 217-258
  7. Back Matter

About this book

Introduction

Generic programming is about making programs more widely applicable via exotic kinds of parametrization---not just along the dimensions of values or of types, but also of things such as the shape of data, algebraic
structures, strategies, computational paradigms, and so on. Indexed programming is a lightweight form of dependently typed programming, constraining flexibility by allowing one to state and check relationships between parameters: that the shapes of two arguments agree, that an encoded value matches some type, that values transmitted along a channel conform to the stated protocol, and so on.

The two forces of genericity and indexing balance each other nicely, simultaneously promoting and controlling generality. The 5 lectures included in this book stem from the Spring School on Generic and Indexed Programming, held in Oxford, UK, in March 2010 as a closing activity of the generic and indexed programming  project at Oxford which took place in the years 2006-2010.

Keywords

bidirectional programming category theory functional programming parametric polymorphism type theory

Editors and affiliations

  • Jeremy Gibbons
    • 1
  1. 1.Department of Computer ScienceUniversity of OxfordOxfordUK

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-642-32202-0
  • Copyright Information Springer-Verlag Berlin Heidelberg 2012
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Computer Science
  • Print ISBN 978-3-642-32201-3
  • Online ISBN 978-3-642-32202-0
  • Series Print ISSN 0302-9743
  • Series Online ISSN 1611-3349
  • Buy this book on publisher's site
Industry Sectors
Pharma
Automotive
Biotechnology
Finance, Business & Banking
Electronics
IT & Software
Telecommunications
Aerospace
Engineering