C++ COMPILE-TIME PROLOG INTERPRETER ----------------------------------- C++ Templates are Turing Complete. It means that any computation expressible by a computer program can be computed, in some form, by a template metaprogram. prolog.cpp - Prolog-like program examples tcalc.h - Prolog interpreter source test.cpp - various tests P.S. Every good programmer should write at least one weird program, like chess game written in 'sed' utility, artificial neural network in Brainfuck, etc.