Department of Computer Science | Institute of Theoretical Computer Science | CADMO
Prof. Emo Welzl and Prof. Bernd Gärtner
Mittagsseminar Talk Information |
Date and Time: Tuesday, November 03, 2009, 12:15 pm
Duration: This information is not available in the database
Location: OAT S15/S16/S17
Speaker: Yves Brise
Templates are a programming technique that lets the programmer define functions and classes in a generic way. This allows functions and classes to work with different data types, without the need to rewrite each one of them. The compiler will produce the actual code for the programmer. That is what templates were initially intended for. Then, in 1994, Erwin Unruh circulated a short C++ program that did something unexpected. Let me surprise you... This discovery has spawned the whole new field of so-called Template Metaprogramming (TMP). In this talk, I will try to show you some aspects of TMP, first and foremost, how a Template Metaprogram can simulate a universal Turing machine. If time permits, I will also talk about a practical application of C++ Templates to sparse vectors. In particular, if the sparsity patterns of the involved vectors are known at compile time, then very efficient code can be generated for operations on these vectors. I will give a short introduction on templates, but I can't help but assume a certain familiarity with C++ programming (or programming in general at least).
The material in this talk is mainly based on a paper by Todd Veldhuizen (Turing completeness, 2003) and a paper by Jaakko Järvi (sparse vectors, 1997).
Upcoming talks | All previous talks | Talks by speaker | Upcoming talks in iCal format (beta version!)
Previous talks by year: 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001 2000 1999 1998 1997 1996
Information for students and suggested topics for student talks
Automatic MiSe System Software Version 1.4803M | admin login