Papers & C++
...a very special dessert. I wrote it myself. It starts so simply, each line of the program creating a new effect, just like poetry.
Papers
C++ Coding Standard
Coding standard and various notes regarding writing software in the C and C++ programming languages. This document describes my preferences of writing and structuring code in recent and future projects.
Libraries and sources
EXT C++ Library
Set of various classes, templates and macros that extend functionality provided by ISO C++ and standard C and C++ library. All of these were first used in real projects, then found very reusable, re-factored and packed together into the EXT Library. As such its presence is a requirement to build some of my newer projects.
Brace C++ Library
Brace is a comprehensive C++ template library that parse, organize and serialize string-based human-readable hierarchical data. The contained format itself is easier to edit and maintain than XML, yet similar in philosophy and already in widespread use.
int128
Now implemented throught generic double_integer template that doubles width of any integral data type, even recursively. Unlike other large number classes, you can work with double_integer instantiated types just like with other P.O.D. types, the template generates native little-endian integers.
Suspended projects
Wireframe RTS
Although far from a fully-fledged Real Time Strategy game, this is still somewhat playable technology demo. A temporarily suspended hobby project, written from scratch in C++ using OpenGL for rendering.
SPROCKET CMS
Lightweight, straightforward and short PHP script rendering XHTML 1.1 compatible with text-mode browsers that drives this website.
Emphasize C++ IDE
Now in state of planning and design, Emphasize is a proof-of-concept IDE, source code editor for the C++ programming language. Build on a few unique features and evolutionary thoughts that many programmers miss in their IDEs and peppered with some controversial innovations...
Archive
Just like any other typical programmer I often enthuse over some interesting idea. And more than often the project design grows over my head as I realize what resources it would finally require, or sometimes that enthusiasm just fades away. Because I often spent many weeks on such projects, I feel the need to at least share what I have so far. These projects can be found here.
eXtendable Binary
An effort to implement a library for manipulation with universal file format that would match the requirements of so called Binary XML (a superset of features required by Efficient XML Interchange). The XB data format allows fast and compact, yet still robust enough, serialization of trees of any arbitrary data.
Z4 Library
The Z4 is filesystem-based storage library. The higher level class allows user to easily store many files within a directory tree in one single file, and achieve moderate compression with still be able to change contents of large files without complete recompression.
Aegis Engine
A very naïve in its first version, and overly complex and overwhelming to a single programmer in its second version. Sadly very incomplete. That is Aegis Engine, a library incorporating 2D and 3D graphics, computations and other components important to development of a computer game.
Tau Controls
A small library of a few simple window controls like button, checkbox, divider, slider and some other. If you need non-standard controls to your program, the TauControls might be the right thing. Especially suitable for hacker
styled programs, already used in the setup dialog of The Matrix Trilogy screensaver.
There are two ways of constructing a software design; One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
- C.A.R. Hoare
With sufficient thrust, pigs fly just fine. However, this is not necessarily a good idea. It is hard to be sure where they are going to land, and it could be dangerous sitting under them as they fly overhead.
- RFC 1925