Modular generics

10 years 1 months ago
Modular generics
This paper presents the design of G, a new language specifically created for generic programming. We review and identify important language features of C++ and Haskell in light of the past decade of generic library research and development. Based on this analysis we propose and evaluate relevant language design decisions for G. Generic programming is concerned with the construction of libraries of reusable software components and is inherently about programming “in the large.” Thus, the design of G places its greatest emphasis on modularity and safety, while also providing runtime efficiency and programmer convenience. This paper focuses on name scoping and type checking for generic functions, support for dispatching to algorithm specializations, support for type associations among abstractions, and separate compilation. The resulting design for G includes three novel aspects: scoped models declarations, nested types in concepts, and optional type constraints on generic function...
Jeremy G. Siek
Added 02 Jul 2010
Updated 02 Jul 2010
Type Conference
Year 2004
Authors Jeremy G. Siek
Comments (0)