Andrew Tomazos - Home Page

C++ Proposals

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup Disposition
P0068R0 Proposal of [[unused]], [[nodiscard]] and [[fallthrough]] attributes Andrew Tomazos 2015-09-03 2015-09 Evolution TBD
N4428 Type Property Queries (rev 4) Andrew Tomazos, Christian Kaeser 2015-04-08 2015-04 N4113 Reflection TBD
N4239 Defaulted Comparison Using Reflection A. Tomazos, M. Spertus 2014-10-12 2014-10 Reflection, Evolution
N4230 Nested namespace definition (revision 2) R. Kawulak, A. Tomazos 2014-10-10 2014-10 N4026 Evolution adopted
N4121 Compile-Time String: std::string_literal<n> Andrew Tomazos 2014-07-04 2014-07 Evolution, Library Evolution TBD
N4116 Nested Namespace Definition (rev 1) A. Tomazos, R. Kawulak 2014-07-03 2014-07 N4026 Evolution revised
N4113 Reflection Type Traits For Classes, Unions and Enumerations (rev 3) A. Tomazos, C. Kaeser 2014-07-02 2014-07 N4027 Reflection revised
N4027 Type Member Property Queries (rev 2) A. Tomazos, C. Kaeser 2014-05-22 2014-05 N3815 Reflection revised
N4026 Nested namespace definition Robert Kawulak (Tomazos Presented) 2014-05-23 2014-05 Evolution revised
N3955 Group Member Specifiers Andrew Tomazos 2014-02-25 2014-03 Evolution rejected
N3879 Explicit Flow Control: break label, goto case and explicit switch Andrew Tomazos 2014-01-16 2014-01 Evolution rejected
N3815 Enumerator List Property Queries A. Tomazos, C. Käser 2013-10-03 2013-10 Library Evolution revised

Random Stuff

Andrew's C/C++ Token Count Dataset 2016 (ACTCD16) - a dataset of 4.6 billion C/C++ tokens.

C++ Grandmaster Certification - a C++ course

Folderscope 1.0 - a Windows file management utility. source

Tomazos Binary Tree Traverse simulatenously walks a binary tree in preorder, inorder and postorder in O(n) time while using only O(1) space. In fact the iterator uses only 2 bits of space and a pointer to the current node.

angloname<T> is a paper and demo entitled: Existing C++ Compile-Time Reflection Demo Of Built-In Type Introspection Using Compile-Time Strings, Variable Templates and Type Deduction

QtDirectX11WidgetDemo is a demo of using a DirectX Direct3D pipeline and shader to display 3d graphics in a QWidget.

C++11 Variadic Templates Example a function (using variadic templates) that takes a string containing a number of placeholders and a corresponding number of other parameters (perhaps non-pod) and returns a string with the placeholders replaced with stringified versions of the parameters.

C++ Primitive Integer and Built-In Operator Type Coercion and Result: We look at a concrete implementation of the C++ primitive integer types and the resultant type and value of some of the unary and binary builtin operators. ie given a of type A and b of type B and the operator x, what is the type and value of (a x b). is a shell script that will download the Ubuntu 9.10 Karmic Server CD image and remaster it to install unattended

simplec 1.0 is a compiler/interpreter for a toy language. It demonstrates very basic compiler construction. simplec is built with bison (yacc) and flex (lex) in C and C++. The input file is parsed into a syntax tree and then walked to execute the statements. SimpleC Source Code on GitHub

gcc-stdinc 1.0 is a script that queries gcc (or g++) for it's system include directories and prints them out neatly one-per-line to standard output. Also included is a snippet showing how to do this from a VIM .vimrc file to set your VIM file search path.

Sliding Grid Puzzle is a web puzzle whereby you slide pieces in a grid to try to return them to their home positions (also called the N-puzzle or 15-puzzle). It demonstrates Javascript, XHTML, DOM, CSS and PHP.

jjrun 1.0d1 is a command-line harnass for the Java Compiler Compiler (JavaCC). It lets you run JavaCC with the semantics and ease of an interpretter. It uses bash/make to automagically regenerate a Makefile to do all the heavy-lifting. It is presently part of the development source tree of JavaCC which means it will be integrated into the next release.