Author:
To build:
make
To use:
./chia
Judges’ remarks:
Have you had your morning cup of Java? You might want a second cup before parsing this entry. And give your C pre-processor a triple shot as it tries to handle parameters for “stringification”.
Author’s remarks:
Two things inspired this entry. First, there were the C programs which were
#define
’d to look like Pascal or Visual Basic: the
/bin/sh code from V7
Unix (which reportedly was the
motivation behind this contest!), the VAL
Linker by David Troendle, the
2000/primenum IOCCC entry, … Looking at these
programs, I thought, “hmm… if it’s possible to make C code look like some
weird cross between Pascal, VB, and COBOL, then how about making C code look
like some other language?”
As chance would have it, I was writing some Java code at that time, and one of my net friends was also working on someone else’s Java code. We both hated Java; indeed, I hated Java so much that I was tired of hating it. Then I remembered my earlier idea: “Of course! Why not write C code that looks like Java? And poke fun at Java while I’m at it? All ye behold, as I turn anger into action! PH34R MII!!!!!!!” And so, this entry was born. :-)
Besides carrying a revolutionary message in the comments, this entry also draws a spiffy little Koch snowflake fractal on the screen, with the help of ANSI escape sequences.
The code requires a preprocessor that can stomach all kinds of nonsense that are passed as parameters to macros for stringification. GNU cpp handles such things just fine, but certain broken preprocessors may decide to freak out when they see macro parameters that don’t look like C tokens.
Inventory for 2005/chia
Primary files
- chia.c - entry source code
- Makefile - entry Makefile
- chia.orig.c - original source code
Secondary files
- 2005_chia.tar.bz2 - download entry tarball
- README.md - markdown source for this web page
- .entry.json - entry summary and manifest in JSON
- .gitignore - list of files that should not be committed under git
- .path - directory path from top level directory
- index.html - this web page