Concepts: Linguistic support for generic programming in C++

D Gregor, J Järvi, J Siek, B Stroustrup… - Proceedings of the 21st …, 2006 - dl.acm.org
Generic programming has emerged as an important technique for the development of highly
reusable and efficient software libraries. In C++, generic programming is enabled by the …

An extended comparative study of language support for generic programming

R Garcia, J Jarvi, A Lumsdaine, J Siek… - Journal of functional …, 2007 - cambridge.org
Many modern programming languages support basic generics, sufficient to implement type-
safe polymorphic containers. Some languages have moved beyond this basic support, and …

JTL: the Java tools language

T Cohen, J Gil, I Maman - ACM SIGPLAN Notices, 2006 - dl.acm.org
We present an overview of JTL (the Java Tools Language, pronounced" Gee-tel"), a novel
language for querying JAVA [8] programs. JTL was designed to serve the development of …

Algorithm specialization in generic programming: challenges of constrained generics in C++

J Järvi, D Gregor, J Willcock, A Lumsdaine… - ACM SIGPLAN …, 2006 - dl.acm.org
Generic programming has recently emerged as a paradigm for developing highly reusable
software libraries, most notably in C++. We have designed and implemented a constrained …

Javagi: Generalized interfaces for java

S Wehr, R Lämmel, P Thiemann - European Conference on Object …, 2007 - Springer
JavaGI is an experimental language that extends Java 1.5 by generalizing the interface
concept to incorporate the essential features of Haskell's type classes. In particular …

cJ: Enhancing Java with safe type conditions

SS Huang, D Zook, Y Smaragdakis - Proceedings of the 6th international …, 2007 - dl.acm.org
cJ is an extension of Java that allows supertypes, fields, and methods of a class or interface
to be provided only under some static subtyping condition. For instance, a cJ generic class …

A language for generic programming in the large

JG Siek, A Lumsdaine - Science of Computer Programming, 2011 - Elsevier
Generic programming is an effective methodology for developing reusable software
libraries. Many programming languages provide generics and have features for describing …

Familia: unifying interfaces, type classes, and family polymorphism

Y Zhang, AC Myers - Proceedings of the ACM on Programming …, 2017 - dl.acm.org
Parametric polymorphism and inheritance are both important, extensively explored
language mechanisms for providing code reuse and extensibility. But harmoniously …

JavaGI: The interaction of type classes with interfaces and inheritance

S Wehr, P Thiemann - ACM Transactions on Programming Languages …, 2011 - dl.acm.org
The language JavaGI extends Java 1.5 conservatively by a generalized interface
mechanism. The generalization subsumes retroactive and type-conditional interface …

[图书][B] A language for generic programming

JG Siek - 2005 - search.proquest.com
The past decade of software library construction has demonstrated that the discipline of
generic programming is an effective approach to the design and implementation of large …