GOTO is a vendor independent international software development conference with more that 90 top speaker and 1300 attendees. The conference cover topics such as .Net, Java, Open Source, Agile, Architecture and Design, Web, Cloud, New Languages and Processes

Jesper Clausen, Assistant Vice President / Solution Architect @ Saxo Bank

Jesper Clausen

Biography: Jesper Clausen

Jesper has been with Saxo Bank since 2005; first in the price distribution area and then as solution architect for the Forex and Forex Options area for more than five years. Jesper has mainly focused on designing cross system solutions and being the man in the middle between business and the development team, and he has worked on a variety of large (and small) projects. Fortunately, Jesper has also had the opportunity to do some C++ development in between writing design documents.

Jesper has an MSc in computer science from the University of Copenhagen and has worked professionally as a programmer since 1990. He started out as a student developer (creating educational programs and games for schoolchildren), and later on he worked for PriceWaterHouseCoopers (transportation planning) and HISEC (alarm and access control systems).

 

Presentation: Using typelists and template metaprogramming to generate code and avoid duplication

Track: Solution Track / Time: Friday 13:20 - 14:10 / Location: Margrethe

In 2001 Andrei Alexandrescu’s “Modern C++ Design: Generic Programming and Design Patterns Applied” was published, introducing typelists as a way to express lists of types and manipulate those using templates. These techniques can and have been used in practice in places where similar code is duplicated for a set of types. Instead of defining a type and adding broiler template code, a typelist of the types is created at the place where they are defined. This typelist is then used together with template specialization to get the compiler to generate the type specific code. The result is a smaller code base with more functionality and little or no (source) code duplication, and less error prone code (same or no bugs for all types).  The presentation covers advanced practical uses of the techniques outlined above that generate efficient type safe code and avoid duplication.