Date Added: Sep 2011
This paper presents how generic programming is implemented in Java and C++. Java is a language where the current system for generic programming distinguishes between context of library development and the context of library usage. The compiler diagnoses the error. In the correct context if some bug appeared somewhere in one of these contexts. Java is efficient and user friendly when developing and using generic libraries. C++ templates are fragile. An upgrade from templates to C++ concepts is supposed to eliminate these fragilities. Although this upgrade is not part of C++ standard yet, the expectations are quite promising.