Publications
Publications (Books)
-
C++ Cookbook - D. Ryan Stephens, Christopher Diggins, Jonathan Turkanis, and Jeff Cogswell. November 2005, O’Reilly
Publications (Selected Articles)
-
Building More Flexible Types With Mixins, C++ Users Journal, January 2006
This article described how to use templates to build classes in reusable layers. -
An Efficient Variant Type, C++ Users Journal, November 2005
This article describes a more efficient alternative to the boost::any class. -
Unsmart Pointers Part II, C++ Users Journal, September 2005 and Unsmart Pointers Part I, C++ Users Journal, July 2005
These articles discussed pointer template classes which did not automatically release memory, but which could help make code more robust and aid in debugging. -
Revisiting Unix Filters, C++ Users Journal, May 2005
This article discussed a technique for using C++ functions like Unix filters, by overriding the pipe operator and redirecting standard in and standard out to temporary buffers. -
Programming with Contracts in C++, Doctor Dobbs Journal, March 2005
This article explained how to apply techniques from the Design by Contract methodology to C++. -
Introducing Heron, Software Developer’s Journal (a Polish magazine), January 2005
This article described my programming language Heron. -
Constrained Value Types Using Policies, C++ Users Journal, December 2004
I described how to use Policies to implement constrained value types (such as bounded integers). -
C++ with Interfaces, C++ Users Journal, September 2004
This article explained a novel technique I invented to implement signature based polymorphism (a.k.a. duck-typing) in C++ using templates. I also showed performance advantages of this approach to polymorphism. This work inspired the development of the BIL Interfaces Library by Jonathan Turkanis. -
Aspect Oriented Programming in C++, Doctor Dobbs Journal, August 2004
This article showed how to use macros to implement aspect oriented programming techniques in C++. This article has been referenced in the conference proceedings for Generative Programming and Component Engineering: Third International Conference, GPCE 2004.