replace trailing whitespace with blackslash in README.md
As an alternative to the markdown trailing whitespace as a line break, we use a trailing blackslash as a markdown line break.
This commit is contained in:
1 parent
ddb78f6f33
commit
6625034139
263 files changed
+1181
-1181
No files matched your search
@@ -34,7 +34,7 @@ so what if the Makefiles grow a little! :-)
|
|||||||
|
|
||||||
One vendor's lint got hung in an infinite loop over this entry!
|
One vendor's lint got hung in an infinite loop over this entry!
|
||||||
|
|
||||||
FYI: We will let Mark get away with this truly sick entry this time, but
|
FYI: We will let Mark get away with this truly sick entry this time, but\
|
||||||
for the future on we have placed a limit on the size of a compile line.
|
for the future on we have placed a limit on the size of a compile line.
|
||||||
|
|
||||||
NOTE: originally we made a comment in [Larry Wall's
|
NOTE: originally we made a comment in [Larry Wall's
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
# Best One Liner
|
# Best One Liner
|
||||||
|
|
||||||
David Korn
|
David Korn\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Grand Prize
|
# Grand Prize
|
||||||
|
|
||||||
Roemer B. Lievaart
|
Roemer B. Lievaart\
|
||||||
Netherlands
|
Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+1
-1
@@ -46,7 +46,7 @@ detail, see [thanks-for-fixes.md](/thanks-for-fixes.md).
|
|||||||
|
|
||||||
## Judges' remarks
|
## Judges' remarks
|
||||||
|
|
||||||
This entry has a very twisted flow of control via recursion, iteration
|
This entry has a very twisted flow of control via recursion, iteration\
|
||||||
and multi-processing. Try to understand what is being done with the
|
and multi-processing. Try to understand what is being done with the
|
||||||
system calls.
|
system calls.
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ This program shows that C has many unnecessary constructs, in fact
|
|||||||
only `while`,`--`, and `>=` are required. (The two assignments at
|
only `while`,`--`, and `>=` are required. (The two assignments at
|
||||||
the beginning could be avoided if `atoi(3)` was rewritten with this
|
the beginning could be avoided if `atoi(3)` was rewritten with this
|
||||||
new paradigm.) Note that the lack of both the controversial `goto`
|
new paradigm.) Note that the lack of both the controversial `goto`
|
||||||
and assignment statements makes the meaning crystal clear. The current
|
and assignment statements makes the meaning crystal clear. The current\
|
||||||
ANSI committee should look into this practical simplification of C.
|
ANSI committee should look into this practical simplification of C.
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Best layout
|
# Best layout
|
||||||
|
|
||||||
Merlyn LeRoy (Brian Westley)
|
Merlyn LeRoy (Brian Westley)\
|
||||||
US
|
US
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|||||||
+10
-10
@@ -1,10 +1,10 @@
|
|||||||
# Best self-modifying program
|
# Best self-modifying program
|
||||||
|
|
||||||
Jay Vosburgh
|
Jay Vosburgh\
|
||||||
Sequent Computer Systems, Inc
|
Sequent Computer Systems, Inc\
|
||||||
15450 SW Koll Parkway
|
15450 SW Koll Parkway\
|
||||||
Beaverton, OR
|
Beaverton, OR\
|
||||||
97006
|
97006\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -43,16 +43,16 @@ is not in the repository.
|
|||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
In a nutshell, this is probably the slowest and most
|
In a nutshell, this is probably the slowest and most
|
||||||
obnoxious factorial program ever written. Unfortunately,
|
obnoxious factorial program ever written. Unfortunately,\
|
||||||
the name of the C source must be "ouroboros.c"; the name is
|
the name of the C source must be "ouroboros.c"; the name is\
|
||||||
hard-coded into the program.
|
hard-coded into the program.
|
||||||
|
|
||||||
The source is a legal shell script and a legal C program.
|
The source is a legal shell script and a legal C program.\
|
||||||
The shell script compiles itself, and then executes the
|
The shell script compiles itself, and then executes the
|
||||||
resulting binary, giving the source as input. The program
|
resulting binary, giving the source as input. The program\
|
||||||
works by successively modifying #define lines each pass through.
|
works by successively modifying #define lines each pass through.
|
||||||
|
|
||||||
Both `indent` and `cb` will damage the program, `indent`
|
Both `indent` and `cb` will damage the program, `indent`\
|
||||||
much more so.
|
much more so.
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best of show
|
# Best of show
|
||||||
|
|
||||||
Jari Arkko, Ora Lassila, Esko Nuutila
|
Jari Arkko, Ora Lassila, Esko Nuutila\
|
||||||
Laboratory of Information Processing Science
|
Laboratory of Information Processing Science\
|
||||||
Helsinki University of Technology
|
Helsinki University of Technology\
|
||||||
Otakaari 1
|
Otakaari 1\
|
||||||
02150 Espoo
|
02150 Espoo\
|
||||||
Finland
|
Finland
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -35,7 +35,7 @@ is impressive enough to win the Best of show award.
|
|||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
This program implements a Lisp interpreter in 1465 bytes of source.
|
This program implements a Lisp interpreter in 1465 bytes of source.
|
||||||
Some sophisticated features supported, eg. functionals and recursion.
|
Some sophisticated features supported, eg. functionals and recursion.\
|
||||||
The special-forms/functions/variables implemented are:
|
The special-forms/functions/variables implemented are:
|
||||||
|
|
||||||
- \+
|
- \+
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most humorous output
|
# Most humorous output
|
||||||
|
|
||||||
Oskar von der Luehe
|
Oskar von der Luehe\
|
||||||
Institut fuer Astronomie
|
Institut fuer Astronomie\
|
||||||
ETH - Zentrum
|
ETH - Zentrum\
|
||||||
8092 Zuerich
|
8092 Zuerich\
|
||||||
Switzerland
|
Switzerland
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -22,7 +22,7 @@ Run the program this way:
|
|||||||
./ovdluhe < textfile
|
./ovdluhe < textfile
|
||||||
```
|
```
|
||||||
|
|
||||||
The program stops when it reaches the end of the template buffer
|
The program stops when it reaches the end of the template buffer\
|
||||||
by chance or is killed.
|
by chance or is killed.
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|||||||
+5
-5
@@ -1,10 +1,10 @@
|
|||||||
# Most complex algorithm
|
# Most complex algorithm
|
||||||
|
|
||||||
Paul E. Black
|
Paul E. Black\
|
||||||
CIRRUS LOGIC, Inc.
|
CIRRUS LOGIC, Inc.\
|
||||||
1463 Centre Pointe Dr.
|
1463 Centre Pointe Dr.\
|
||||||
Milpitas, CA
|
Milpitas, CA\
|
||||||
95035
|
95035\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best minimal use of C
|
# Best minimal use of C
|
||||||
|
|
||||||
Arch D. Robison
|
Arch D. Robison\
|
||||||
University of Illinois
|
University of Illinois\
|
||||||
1304 W. Springfield Ave.
|
1304 W. Springfield Ave.\
|
||||||
Urbana, IL
|
Urbana, IL\
|
||||||
61801
|
61801\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best layout
|
# Best layout
|
||||||
|
|
||||||
Lievaart, Roemer B.
|
Lievaart, Roemer B.\
|
||||||
VU-Informatica, Amsterdam
|
VU-Informatica, Amsterdam\
|
||||||
Marcusstraat 29/2,
|
Marcusstraat 29/2,\
|
||||||
NL 1091 TJ Amsterdam
|
NL 1091 TJ Amsterdam\
|
||||||
Netherlands
|
Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best game
|
# Best game
|
||||||
|
|
||||||
John Tromp
|
John Tromp\
|
||||||
Centre for Mathematics and Computer Science (CWI)
|
Centre for Mathematics and Computer Science (CWI)\
|
||||||
Oetgensstraat 7
|
Oetgensstraat 7\
|
||||||
1701CK Heerhugowaard
|
1701CK Heerhugowaard\
|
||||||
Netherlands
|
Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+8
-8
@@ -1,10 +1,10 @@
|
|||||||
# Best one liner
|
# Best one liner
|
||||||
|
|
||||||
David Van Brackle
|
David Van Brackle\
|
||||||
Department of Computer Science
|
Department of Computer Science\
|
||||||
University of Central Florida
|
University of Central Florida\
|
||||||
Orlando, Florida
|
Orlando, Florida\
|
||||||
32816
|
32816\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -17,21 +17,21 @@ make all
|
|||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./vanb the rug gary lent
|
./vanb the rug gary lent\
|
||||||
./vanb unix is better than os/2
|
./vanb unix is better than os/2
|
||||||
```
|
```
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
This program computes all proper subsets of the set of
|
This program computes all proper subsets of the set of
|
||||||
arguments passed to it. Each subset is printed with one
|
arguments passed to it. Each subset is printed with one\
|
||||||
element on each line, followed by a line of ten dashes.
|
element on each line, followed by a line of ten dashes.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
The program has the following charming and possibly
|
The program has the following charming and possibly\
|
||||||
non-portable features:
|
non-portable features:
|
||||||
|
|
||||||
* It has no local or global variables, only the command-line parameters.
|
* It has no local or global variables, only the command-line parameters.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Most algorithms in one program
|
# Most algorithms in one program
|
||||||
|
|
||||||
Merlyn LeRoy (Brian Westley)
|
Merlyn LeRoy (Brian Westley)\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -86,7 +86,7 @@ Also requires two's complement (I think).
|
|||||||
|
|
||||||
The source code will run if ROT13'ed and/or reversed, using a
|
The source code will run if ROT13'ed and/or reversed, using a
|
||||||
different algorithm for each version (hereafter referred to as
|
different algorithm for each version (hereafter referred to as
|
||||||
`ver0` (original), `ver1` (ROT13), `ver2` (reversed), and `ver3`
|
`ver0` (original), `ver1` (ROT13), `ver2` (reversed), and `ver3`\
|
||||||
(ROT13 and reversed)).
|
(ROT13 and reversed)).
|
||||||
|
|
||||||
When compiling these versions, one needs to define 'trgpune'
|
When compiling these versions, one needs to define 'trgpune'
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
# Best Small Program
|
# Best Small Program
|
||||||
|
|
||||||
Baruch Nissenbaum
|
Baruch Nissenbaum\
|
||||||
Tel-Aviv University
|
Tel-Aviv University\
|
||||||
The Faculty of Engineering
|
The Faculty of Engineering\
|
||||||
Tel-Aviv
|
Tel-Aviv\
|
||||||
Israel
|
Israel
|
||||||
|
|
||||||
Doron Osovlanski
|
Doron Osovlanski\
|
||||||
CADTECH - CAD/CAM Systems Ltd
|
CADTECH - CAD/CAM Systems Ltd\
|
||||||
24 Ben-Yosef St.
|
24 Ben-Yosef St.\
|
||||||
Givat-Shmuel 51905
|
Givat-Shmuel 51905\
|
||||||
Israel
|
Israel
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
Chris Mills
|
Chris Mills\
|
||||||
Wyse Technology
|
Wyse Technology\
|
||||||
3471 N. 1st St.
|
3471 N. 1st St.\
|
||||||
San Jose CA 95134
|
San Jose CA 95134\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+5
-5
@@ -1,8 +1,8 @@
|
|||||||
# Best Language Tool
|
# Best Language Tool
|
||||||
|
|
||||||
Diomidis Spinellis
|
Diomidis Spinellis\
|
||||||
Greece
|
Greece\
|
||||||
<https://www.spinellis.gr/>
|
<https://www.spinellis.gr/>\
|
||||||
Mastodon: <https://mstdn.social/@DSpinellis>
|
Mastodon: <https://mstdn.social/@DSpinellis>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -57,7 +57,7 @@ This is the DDS-BASIC Interpreter (Version 1.00).
|
|||||||
- NEXT variable
|
- NEXT variable
|
||||||
- GOSUB exp
|
- GOSUB exp
|
||||||
- RETURN
|
- RETURN
|
||||||
- GOTO exp
|
- GOTO exp\
|
||||||
- IF exp THEN exp
|
- IF exp THEN exp
|
||||||
- INPUT variable
|
- INPUT variable
|
||||||
- PRINT string
|
- PRINT string
|
||||||
@@ -90,7 +90,7 @@ Boolean expressions evaluate to 0 for false and 1 for true.
|
|||||||
|
|
||||||
- Free format positioning of tokens on the line.
|
- Free format positioning of tokens on the line.
|
||||||
- No space is allowed before the line number.
|
- No space is allowed before the line number.
|
||||||
- Exactly one space is needed between the OLD or SAVE command and
|
- Exactly one space is needed between the OLD or SAVE command and\
|
||||||
the filename.
|
the filename.
|
||||||
- ALL INPUT MUST BE UPPERCASE.
|
- ALL INPUT MUST BE UPPERCASE.
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,9 @@
|
|||||||
# Best Abuse of the C Preprocessor
|
# Best Abuse of the C Preprocessor
|
||||||
|
|
||||||
David Goodenough
|
David Goodenough\
|
||||||
anonymous organization
|
anonymous organization\
|
||||||
541 Commonwealth Ave
|
541 Commonwealth Ave\
|
||||||
Newton, MA 02159
|
Newton, MA 02159\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+18
-18
@@ -1,22 +1,22 @@
|
|||||||
# Best Entropy-reducer
|
# Best Entropy-reducer
|
||||||
|
|
||||||
James A. Woods
|
James A. Woods\
|
||||||
Research Institute for Advanced Computer Science
|
Research Institute for Advanced Computer Science\
|
||||||
MS 230-5
|
MS 230-5\
|
||||||
NASA Ames Research Center
|
NASA Ames Research Center\
|
||||||
Moffett Field, CA 94131
|
Moffett Field, CA 94131\
|
||||||
US
|
US
|
||||||
|
|
||||||
Karl F. Fox
|
Karl F. Fox\
|
||||||
Morning Star Technologies, Inc.
|
Morning Star Technologies, Inc.\
|
||||||
1760 Zollinger Road
|
1760 Zollinger Road\
|
||||||
Columbus, OH 43221
|
Columbus, OH 43221\
|
||||||
US
|
US
|
||||||
|
|
||||||
Paul Eggert
|
Paul Eggert\
|
||||||
Twin Sun Inc.
|
Twin Sun Inc.\
|
||||||
360 N. Sepulveda Blvd. #2055
|
360 N. Sepulveda Blvd. #2055\
|
||||||
El Segundo, CA 90245
|
El Segundo, CA 90245\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -74,15 +74,15 @@ cmp ../README.md README.md
|
|||||||
### ABSTRACT
|
### ABSTRACT
|
||||||
|
|
||||||
#### Minimal, Universal File Bundling (or, Functional Obfuscation in a Self-Decoding Unix Shell Archive)
|
#### Minimal, Universal File Bundling (or, Functional Obfuscation in a Self-Decoding Unix Shell Archive)
|
||||||
|
\
|
||||||
James A. Woods
|
James A. Woods\
|
||||||
Universities Space Research Association
|
Universities Space Research Association\
|
||||||
NASA Ames Research Center
|
NASA Ames Research Center
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
> "Use an algorithm, go to jail."
|
> "Use an algorithm, go to jail."
|
||||||
>
|
>\
|
||||||
> -- anon., circa 1988, pre-Morris worm era
|
> -- anon., circa 1988, pre-Morris worm era
|
||||||
|
|
||||||
----
|
----
|
||||||
@@ -122,7 +122,7 @@ environment.
|
|||||||
> And he shows them pearly white
|
> And he shows them pearly white
|
||||||
> Just a jackknife has Macheath, dear--
|
> Just a jackknife has Macheath, dear--
|
||||||
> And he keeps it out of sight.
|
> And he keeps it out of sight.
|
||||||
>
|
>\
|
||||||
> -- Bertolt Brecht, Threepenny Opera
|
> -- Bertolt Brecht, Threepenny Opera
|
||||||
|
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|||||||
+7
-7
@@ -1,11 +1,11 @@
|
|||||||
# Most Unusual Data Structure
|
# Most Unusual Data Structure
|
||||||
|
|
||||||
Peter J Ruczynski
|
Peter J Ruczynski\
|
||||||
Pyramid Technology Ltd.
|
Pyramid Technology Ltd.\
|
||||||
Pyramid House
|
Pyramid House\
|
||||||
Solatron Road
|
Solatron Road\
|
||||||
Farnborough
|
Farnborough\
|
||||||
Hants GU14 7PL
|
Hants GU14 7PL\
|
||||||
England, U.K.
|
England, U.K.
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -25,7 +25,7 @@ make all
|
|||||||
This program prints out a string. Can you figure out how
|
This program prints out a string. Can you figure out how
|
||||||
it is done?
|
it is done?
|
||||||
|
|
||||||
By use of pointers to functions returning a struct of pointers
|
By use of pointers to functions returning a struct of pointers\
|
||||||
to functions!
|
to functions!
|
||||||
|
|
||||||
Note that some compilers will be unable to compile the expression `X=g()...` in
|
Note that some compilers will be unable to compile the expression `X=g()...` in
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# ANSI Committee's Worst Abuse of C
|
# ANSI Committee's Worst Abuse of C
|
||||||
|
|
||||||
Larry Jones
|
Larry Jones\
|
||||||
SDRC
|
SDRC\
|
||||||
2000 Eastman Dr
|
2000 Eastman Dr\
|
||||||
Milford, OH 45150
|
Milford, OH 45150\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
# Strangest Abuse of the Rules
|
# Strangest Abuse of the Rules
|
||||||
|
|
||||||
Stig Hemmer
|
Stig Hemmer\
|
||||||
Norwegian Institute of Technology
|
Norwegian Institute of Technology\
|
||||||
N-7034 Trondheim-NTH
|
N-7034 Trondheim-NTH\
|
||||||
Norway
|
Norway
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+2
-2
@@ -1,9 +1,9 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Byron Rakitzis
|
Byron Rakitzis\
|
||||||
US
|
US
|
||||||
|
|
||||||
Sean Dorward
|
Sean Dorward\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best of Show
|
# Best of Show
|
||||||
|
|
||||||
Adrian Mariano
|
Adrian Mariano\
|
||||||
University of Washington
|
University of Washington\
|
||||||
2729 72nd Ave SE
|
2729 72nd Ave SE\
|
||||||
Mercer Island, WA 98040
|
Mercer Island, WA 98040\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -69,7 +69,7 @@ operators:
|
|||||||
```
|
```
|
||||||
|
|
||||||
The symbol `^` is the power operator. Note that it only supports
|
The symbol `^` is the power operator. Note that it only supports
|
||||||
integer powers. Also note that all expressions are evaluated strictly
|
integer powers. Also note that all expressions are evaluated strictly\
|
||||||
left to right. (i.e., parenthesis aren't supported).
|
left to right. (i.e., parenthesis aren't supported).
|
||||||
|
|
||||||
Try running the program with the following args:
|
Try running the program with the following args:
|
||||||
@@ -80,14 +80,14 @@ Try running the program with the following args:
|
|||||||
./theorem 'x^2/y+x' 0 1 0.1 6
|
./theorem 'x^2/y+x' 0 1 0.1 6
|
||||||
```
|
```
|
||||||
|
|
||||||
But wait, there is more! You also get, free of charge, a
|
But wait, there is more! You also get, free of charge, a\
|
||||||
reversing filter! Try:
|
reversing filter! Try:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./theorem -r 0 0 0 0 < theorem.c > sorter.c
|
./theorem -r 0 0 0 0 < theorem.c > sorter.c
|
||||||
```
|
```
|
||||||
|
|
||||||
Still not impressed? The author throws in for free, a
|
Still not impressed? The author throws in for free, a\
|
||||||
sort program! Try:
|
sort program! Try:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
+11
-11
@@ -1,10 +1,10 @@
|
|||||||
# Best Layout
|
# Best Layout
|
||||||
|
|
||||||
Brian Westley (Merlyn LeRoy on usenet)
|
Brian Westley (Merlyn LeRoy on usenet)\
|
||||||
DigiBoard, Inc.
|
DigiBoard, Inc.\
|
||||||
1026 Blair Ave.
|
1026 Blair Ave.\
|
||||||
St. Paul, MN 55104
|
St. Paul, MN 55104\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ Use `westley.alt` as you would `westley`.
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
If you would rather "Daisy" someone other than Westley, rename
|
If you would rather "Daisy" someone other than Westley, rename\
|
||||||
the program as needed. :-)
|
the program as needed. :-)
|
||||||
|
|
||||||
Read each block of code as if it were a piece of correspondence.
|
Read each block of code as if it were a piece of correspondence.
|
||||||
@@ -65,15 +65,15 @@ charlie,
|
|||||||
signed charlotte
|
signed charlotte
|
||||||
```
|
```
|
||||||
|
|
||||||
The original source had control-L's after each code block. To
|
The original source had control-L's after each code block. To\
|
||||||
make it easier on news readers, we converted each control-L to
|
make it easier on news readers, we converted each control-L to\
|
||||||
a blank line.
|
a blank line.
|
||||||
|
|
||||||
|
|
||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
This is a "Picking the Daisy" simulation. Now, instead of mangling a
|
This is a "Picking the Daisy" simulation. Now, instead of mangling a\
|
||||||
daisy, simply run this program with the number of petals desired as
|
daisy, simply run this program with the number of petals desired as\
|
||||||
the argument.
|
the argument.
|
||||||
|
|
||||||
This is a good counter-example to peoples' complaints that C doesn't
|
This is a good counter-example to peoples' complaints that C doesn't
|
||||||
@@ -84,7 +84,7 @@ set, statement not reached, return(e) and return. Lint dumps core
|
|||||||
on some systems. My personal favorite lint complaint is
|
on some systems. My personal favorite lint complaint is
|
||||||
|
|
||||||
**_"warning: eroticism unused in function main"._**
|
**_"warning: eroticism unused in function main"._**
|
||||||
|
\
|
||||||
Also obviously, `(char)lotte` and `(char*)lie` are incompatible types...
|
Also obviously, `(char)lotte` and `(char*)lie` are incompatible types...
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+14
-14
@@ -1,9 +1,9 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Anthony C Howe
|
Anthony C Howe\
|
||||||
Mortice Kern Systems Inc. #CL-23
|
Mortice Kern Systems Inc. #CL-23\
|
||||||
35 King St. N 268 Phillip St.
|
35 King St. N 268 Phillip St.\
|
||||||
Waterloo, On Waterloo, On
|
Waterloo, On Waterloo, On\
|
||||||
Canada, N2J 2W9 Canada, N2L 6G9
|
Canada, N2J 2W9 Canada, N2L 6G9
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -65,7 +65,7 @@ results depending on the implementation of `curses`.
|
|||||||
- W write buffer to file
|
- W write buffer to file
|
||||||
- R refresh the screen
|
- R refresh the screen
|
||||||
- Q quit
|
- Q quit
|
||||||
|
\
|
||||||
### Exit status
|
### Exit status
|
||||||
|
|
||||||
- 0 success
|
- 0 success
|
||||||
@@ -88,10 +88,10 @@ to provide more portable code, since the compiler should handle the translation
|
|||||||
of them into the native character set. Note that `'\f'` (form-feed) was used to
|
of them into the native character set. Note that `'\f'` (form-feed) was used to
|
||||||
exit insert mode because K&R C had no escape constant for the escape-key.
|
exit insert mode because K&R C had no escape constant for the escape-key.
|
||||||
|
|
||||||
My goals for this project were to learn and experiment with the
|
My goals for this project were to learn and experiment with the\
|
||||||
Buffer Gap Scheme [Fin80][net90], write a useful and *portable*
|
Buffer Gap Scheme [Fin80][net90], write a useful and *portable*\
|
||||||
program, and meet the requirements of the IOCCC. I initially
|
program, and meet the requirements of the IOCCC. I initially\
|
||||||
planned to have a mini `curses` built-in like the IOCCC Tetris entry
|
planned to have a mini `curses` built-in like the IOCCC Tetris entry\
|
||||||
from a previous year, however this was not as portable as using a
|
from a previous year, however this was not as portable as using a
|
||||||
`curses` library with `TERMINFO`/`TERMCAP` support.
|
`curses` library with `TERMINFO`/`TERMCAP` support.
|
||||||
|
|
||||||
@@ -104,18 +104,18 @@ screen with long lines. Paging up and down should work correctly, however.
|
|||||||
|
|
||||||
### References:
|
### References:
|
||||||
|
|
||||||
[Fin80] Craig A. Finseth, "Theory and Practice of Text Editors or
|
[Fin80] Craig A. Finseth, "Theory and Practice of Text Editors or\
|
||||||
A Cookbook For An EMACS", TM-165, MIT Lab. for Computer
|
A Cookbook For An EMACS", TM-165, MIT Lab. for Computer\
|
||||||
Science
|
Science
|
||||||
|
|
||||||
[KeP81] Kernighan & Plauger, "Software Tools in Pascal",
|
[KeP81] Kernighan & Plauger, "Software Tools in Pascal",\
|
||||||
Addison-Wesley, 81, chapter 6
|
Addison-Wesley, 81, chapter 6
|
||||||
|
|
||||||
[Mil86] Eugene W. Myers & Webb Miller, "Row-replacement Algorithms
|
[Mil86] Eugene W. Myers & Webb Miller, "Row-replacement Algorithms
|
||||||
for Screen Editors", TR 86-19, Dept. of Computer Science,
|
for Screen Editors", TR 86-19, Dept. of Computer Science,\
|
||||||
U. of Arizona
|
U. of Arizona
|
||||||
|
|
||||||
[MyM86] Eugene W. Myers & Webb Miller, "A simple row-replacement
|
[MyM86] Eugene W. Myers & Webb Miller, "A simple row-replacement\
|
||||||
method", TR 86-28, Dept. of Computer Science, U. of Arizona
|
method", TR 86-28, Dept. of Computer Science, U. of Arizona
|
||||||
|
|
||||||
[Mil87] Webb Miller, "A Software Tools Sampler", Prentice Hall, 87
|
[Mil87] Webb Miller, "A Software Tools Sampler", Prentice Hall, 87
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Best Of Show
|
# Best Of Show
|
||||||
|
|
||||||
Daniel J. Bernstein
|
Daniel J. Bernstein\
|
||||||
New York University
|
New York University
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Output
|
# Best Output
|
||||||
|
|
||||||
Sean Barrett
|
Sean Barrett\
|
||||||
University of Maryland
|
University of Maryland\
|
||||||
5407 20th Place
|
5407 20th Place\
|
||||||
Hyattsville MD 20782
|
Hyattsville MD 20782\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -79,7 +79,7 @@ Rot13 to read:
|
|||||||
OHTF:
|
OHTF:
|
||||||
|
|
||||||
Lbh pna'g punatr gung ng fgneg lbh'er snpvat qbja ("fbhgu").
|
Lbh pna'g punatr gung ng fgneg lbh'er snpvat qbja ("fbhgu").
|
||||||
|
\
|
||||||
Gur qenjvat nytbevguz pnaabg unaqyr bcra fcnprf (gjb fhpprfvir
|
Gur qenjvat nytbevguz pnaabg unaqyr bcra fcnprf (gjb fhpprfvir
|
||||||
fvqr-pbeevqbef jvgu ab jnyy orgjrra gurz). Va snpg, vg pnaabg unaqyr
|
fvqr-pbeevqbef jvgu ab jnyy orgjrra gurz). Va snpg, vg pnaabg unaqyr
|
||||||
fznyy qbt-yrtf cebcreyl, nygubhtu gur reebe vf fhogyr.
|
fznyy qbt-yrtf cebcreyl, nygubhtu gur reebe vf fhogyr.
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Most Useful Label
|
# Most Useful Label
|
||||||
|
|
||||||
Christian Dupont
|
Christian Dupont\
|
||||||
Ecole Normale Superieure de Lyon
|
Ecole Normale Superieure de Lyon\
|
||||||
Laboratoire d'Informatique Parallele
|
Laboratoire d'Informatique Parallele\
|
||||||
42, Rue H.Berlioz
|
42, Rue H.Berlioz\
|
||||||
69009 Lyon
|
69009 Lyon\
|
||||||
France
|
France
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -40,7 +40,7 @@ Spoiler, rot13 to read:
|
|||||||
|
|
||||||
Gur fbhepr pbqr ubyqf gur yrggref bs gur zrffntr. Rnpu yrggre, pbzovarq
|
Gur fbhepr pbqr ubyqf gur yrggref bs gur zrffntr. Rnpu yrggre, pbzovarq
|
||||||
jvgu nabgure xrl yrggre, vf hfrq gb pbzchgr gur pbbeqvangrf bs gur arkg
|
jvgu nabgure xrl yrggre, vf hfrq gb pbzchgr gur pbbeqvangrf bs gur arkg
|
||||||
yrggre naq xrl. Guhf, gur zrffntr vf pbqr. Gung vf jul V hfr fvyyl
|
yrggre naq xrl. Guhf, gur zrffntr vf pbqr. Gung vf jul V hfr fvyyl\
|
||||||
pbzzragf, zbfg bsgra onqyl fcnprq.
|
pbzzragf, zbfg bsgra onqyl fcnprq.
|
||||||
|
|
||||||
Gur fcnpr punenpgre frdhrapr orgjrra gur jbeqf vf tvira ol n fvzcyr
|
Gur fcnpr punenpgre frdhrapr orgjrra gur jbeqf vf tvira ol n fvzcyr
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
# Best X11 Graphics
|
# Best X11 Graphics
|
||||||
|
|
||||||
David Applegate
|
David Applegate\
|
||||||
School of Computer Science
|
School of Computer Science\
|
||||||
Carnegie Mellon University
|
Carnegie Mellon University\
|
||||||
Pittsburgh PA 15213
|
Pittsburgh PA 15213\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
Guy Jacobson
|
Guy Jacobson\
|
||||||
AT&T Bell Laboratories
|
AT&T Bell Laboratories\
|
||||||
600 Mountain Avenue
|
600 Mountain Avenue\
|
||||||
Murray Hill NJ 07974
|
Murray Hill NJ 07974\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+11
-11
@@ -1,8 +1,8 @@
|
|||||||
# Most Well Rounded
|
# Most Well Rounded
|
||||||
|
|
||||||
Diomidis Spinellis
|
Diomidis Spinellis\
|
||||||
Greece
|
Greece\
|
||||||
<https://www.spinellis.gr/>
|
<https://www.spinellis.gr/>\
|
||||||
Mastodon: <https://mstdn.social/@DSpinellis>
|
Mastodon: <https://mstdn.social/@DSpinellis>
|
||||||
|
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ make dds
|
|||||||
```
|
```
|
||||||
|
|
||||||
For example, the author suggests trying:
|
For example, the author suggests trying:
|
||||||
|
\
|
||||||
```sh
|
```sh
|
||||||
./dds LANDER.BAS 2>/dev/null
|
./dds LANDER.BAS 2>/dev/null
|
||||||
./a.out 2>/dev/null
|
./a.out 2>/dev/null
|
||||||
@@ -112,13 +112,13 @@ compiler called `cc` in your path in order to work.
|
|||||||
### Program commands:
|
### Program commands:
|
||||||
|
|
||||||
|
|
||||||
- variable names A to Z
|
- variable names A to Z\
|
||||||
- FOR var = exp TO exp
|
- FOR var = exp TO exp\
|
||||||
- GOSUB exp
|
- GOSUB exp\
|
||||||
- GOTO exp
|
- GOTO exp\
|
||||||
- INPUT variable
|
- INPUT variable\
|
||||||
- PRINT exp
|
- PRINT exp\
|
||||||
- REM any text
|
- REM any text\
|
||||||
- variables initialized to 0 on RUN
|
- variables initialized to 0 on RUN
|
||||||
- NEXT variable
|
- NEXT variable
|
||||||
- RETURN
|
- RETURN
|
||||||
|
|||||||
+3
-3
@@ -32,7 +32,7 @@ rotated from `the rug gary lent`!
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
This filter, 80 chars plus a newline, fits into a single line on most
|
This filter, 80 chars plus a newline, fits into a single line on most\
|
||||||
terminals (unless your terminal has a line wrap mis-feature :-)).
|
terminals (unless your terminal has a line wrap mis-feature :-)).
|
||||||
|
|
||||||
Note in 2023: fixing this entry to work with modern systems increased the size,
|
Note in 2023: fixing this entry to work with modern systems increased the size,
|
||||||
@@ -40,11 +40,11 @@ originally to 106 characters but dropped down to 85 with clever use of the
|
|||||||
Makefile and removal of a cast that was not strictly necessary.
|
Makefile and removal of a cast that was not strictly necessary.
|
||||||
|
|
||||||
This entry is likely one of the smallest C implementations of this
|
This entry is likely one of the smallest C implementations of this
|
||||||
filter, excluding programs that resort to command line or include
|
filter, excluding programs that resort to command line or include\
|
||||||
file tricks.
|
file tricks.
|
||||||
|
|
||||||
How does this program work? Which 3 bytes of C code can be changed
|
How does this program work? Which 3 bytes of C code can be changed
|
||||||
into 2 bytes, allowing the program to still work, but also stripping
|
into 2 bytes, allowing the program to still work, but also stripping\
|
||||||
the high bit off some input?
|
the high bit off some input?
|
||||||
|
|
||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|||||||
+13
-13
@@ -1,11 +1,11 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
James Bonfield
|
James Bonfield\
|
||||||
University of Warwick
|
University of Warwick\
|
||||||
7 Water End
|
7 Water End\
|
||||||
Wrestlingworth
|
Wrestlingworth\
|
||||||
Sandy Beds
|
Sandy Beds\
|
||||||
SG19 2HA
|
SG19 2HA\
|
||||||
England
|
England
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -29,26 +29,26 @@ This entry has been updated to allow most ANSI C compilers.
|
|||||||
This program is a simple puzzle type game. (I'll leave you to play
|
This program is a simple puzzle type game. (I'll leave you to play
|
||||||
it to see the rest of it .. :-) .) The general idea was to try and
|
it to see the rest of it .. :-) .) The general idea was to try and
|
||||||
write the smallest playable game, but keep the playability and
|
write the smallest playable game, but keep the playability and
|
||||||
enjoyment high.
|
enjoyment high.\
|
||||||
|
\
|
||||||
### Instructions (rot13 to read):
|
### Instructions (rot13 to read):
|
||||||
|
|
||||||
|
|
||||||
Xrl gb znc:-
|
Xrl gb znc:-
|
||||||
|
|
||||||
|
|
|
|
||||||
###### | | | /\ /--\ ==| /\ | | Qverpgbany xrlf
|
###### | | | /\ /--\ ==| /\ | | Qverpgbany xrlf\
|
||||||
###### Fbyvq Jnyy | ----|| \/ /\ ||---- (haybpx qbbef bs
|
###### Fbyvq Jnyy | ----|| \/ /\ ||---- (haybpx qbbef bs
|
||||||
###### | \/ ==| \--/ \/ gur fnzr qverpgvba)
|
###### | \/ ==| \--/ \/ gur fnzr qverpgvba)
|
||||||
|
|
|\
|
||||||
| << >> Qbbef. Haybpxrq ol
|
| << >> Qbbef. Haybpxrq ol
|
||||||
Oynax fcnpr | << iiiiii ^^^^^^ >> gur nobir xrlf.
|
Oynax fcnpr | << iiiiii ^^^^^^ >> gur nobir xrlf.
|
||||||
| << >>
|
| << >>
|
||||||
|
|
|\
|
||||||
___ | b__B\ B__B ^__^ /B__b
|
___ | b__B\ B__B ^__^ /B__b\
|
||||||
/ \ 'Pehfunoyr' | \___/ /----\ /----\ \___/ Gur sbhe fcevgrf sbe
|
/ \ 'Pehfunoyr' | \___/ /----\ /----\ \___/ Gur sbhe fcevgrf sbe
|
||||||
\___/ obhyqre | _/_\ _/ \_ _/ \_ /_\_ lbhe punenpgre :-)
|
\___/ obhyqre | _/_\ _/ \_ _/ \_ /_\_ lbhe punenpgre :-)
|
||||||
|
|
|\
|
||||||
___ hapehfunoyr | /\ Qvnzbaqf. Gurl pna rvgure or sbhaq ylvat
|
___ hapehfunoyr | /\ Qvnzbaqf. Gurl pna rvgure or sbhaq ylvat
|
||||||
/@@@\ obhyqre | < > nebhaq (vs bayl!) be znahsnpgher ol chfuvat
|
/@@@\ obhyqre | < > nebhaq (vs bayl!) be znahsnpgher ol chfuvat
|
||||||
\@@@/ | \/ gjb 'pehfunoyr' ebpxf gbtrgure.
|
\@@@/ | \/ gjb 'pehfunoyr' ebpxf gbtrgure.
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Grand Prize
|
# Grand Prize
|
||||||
|
|
||||||
Brian Westley (Merlyn LeRoy on usenet)
|
Brian Westley (Merlyn LeRoy on usenet)\
|
||||||
DigiBoard, Inc.
|
DigiBoard, Inc.\
|
||||||
1026 Blair Ave.
|
1026 Blair Ave.\
|
||||||
St. Paul, MN 55104
|
St. Paul, MN 55104\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|
||||||
@@ -30,7 +30,7 @@ a move on a tic-tac-toe board:
|
|||||||
4 5 6
|
4 5 6
|
||||||
7 8 9
|
7 8 9
|
||||||
|
|
||||||
If you omit `move_location`, then the computer moves first. For your
|
If you omit `move_location`, then the computer moves first. For your\
|
||||||
next move, recompile `nextmove.c` and play it again:
|
next move, recompile `nextmove.c` and play it again:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@@ -48,9 +48,9 @@ make ttt
|
|||||||
./ttt next_move
|
./ttt next_move
|
||||||
|
|
||||||
```
|
```
|
||||||
|
\
|
||||||
The shell script determines when the game is over, and automatically
|
The shell script determines when the game is over, and automatically\
|
||||||
replaces `merlyn.c` (copied from [westley.c](westley.c) with an improved version after a loss. The [ttt](ttt.sh) script
|
replaces `merlyn.c` (copied from [westley.c](westley.c) with an improved version after a loss. The [ttt](ttt.sh) script\
|
||||||
has two other modes:
|
has two other modes:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Most Educational
|
# Most Educational
|
||||||
|
|
||||||
Adrian Mariano
|
Adrian Mariano\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -27,7 +27,7 @@ NOTE: if you do not specify an arg to the program it will segfault.
|
|||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
Once you get past the obfuscation, you have an opportunity to learn
|
Once you get past the obfuscation, you have an opportunity to learn
|
||||||
about regular expressions and state machines.
|
about regular expressions and state machines.
|
||||||
|
|
||||||
@@ -128,10 +128,10 @@ typing
|
|||||||
It will read stdin and print out all the lines which the automaton
|
It will read stdin and print out all the lines which the automaton
|
||||||
accepts. If the file cannot be opened, a system error message will
|
accepts. If the file cannot be opened, a system error message will
|
||||||
be printed. If the input contains errors, then an error message along
|
be printed. If the input contains errors, then an error message along
|
||||||
with the number of the offending line will be printed to stderr. The
|
with the number of the offending line will be printed to stderr. The\
|
||||||
number of rules for each state is limited to 17. If more than 17 rules
|
number of rules for each state is limited to 17. If more than 17 rules\
|
||||||
are present, you get the error `too_many_rules`, and the state that was
|
are present, you get the error `too_many_rules`, and the state that was\
|
||||||
being processed is printed. Error `no_destination` occurs if you specify a
|
being processed is printed. Error `no_destination` occurs if you specify a\
|
||||||
set of characters, but no destination state, and error `too_many_states`
|
set of characters, but no destination state, and error `too_many_states`
|
||||||
occurs if your automaton has more than 257 states.
|
occurs if your automaton has more than 257 states.
|
||||||
|
|
||||||
@@ -144,8 +144,8 @@ Running:
|
|||||||
will perform a function similar to that of the unix from command.
|
will perform a function similar to that of the unix from command.
|
||||||
|
|
||||||
If no filename is specified on the command line, then `"adgrep.c"` is used
|
If no filename is specified on the command line, then `"adgrep.c"` is used
|
||||||
as the specification for the automaton. (This file has been renamed
|
as the specification for the automaton. (This file has been renamed\
|
||||||
to `adrian.c` by the judges.) In this case, the program will search for
|
to `adrian.c` by the judges.) In this case, the program will search for\
|
||||||
matches to the regular expression:
|
matches to the regular expression:
|
||||||
|
|
||||||
|
|
||||||
@@ -234,7 +234,7 @@ shorter than 999 characters.
|
|||||||
The other info files are adrian.grep.[1-6] which contain the six
|
The other info files are adrian.grep.[1-6] which contain the six
|
||||||
examples that appear above, and from, which is used to emulate the
|
examples that appear above, and from, which is used to emulate the
|
||||||
unix from command. For reasons of clarity, the name "from" should
|
unix from command. For reasons of clarity, the name "from" should
|
||||||
probably not be changed if possible. I wouldn't want to be accused of
|
probably not be changed if possible. I wouldn't want to be accused of\
|
||||||
confusing people by giving the input files weird names.
|
confusing people by giving the input files weird names.
|
||||||
|
|
||||||
If you want to change the default input filename (line 80) you must be
|
If you want to change the default input filename (line 80) you must be
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most Useful Program
|
# Most Useful Program
|
||||||
|
|
||||||
Albert van der Horst
|
Albert van der Horst\
|
||||||
S P&A R&C
|
S P&A R&C\
|
||||||
Oranjestraat 8
|
Oranjestraat 8\
|
||||||
3511 RA UTRECHT
|
3511 RA UTRECHT\
|
||||||
The Netherlands
|
The Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -59,7 +59,7 @@ make alt
|
|||||||
Use `albert.alt` as you would `albert` above.
|
Use `albert.alt` as you would `albert` above.
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
We were impressed with the speed at which it was able to factor
|
We were impressed with the speed at which it was able to factor
|
||||||
arbitrarily large numbers consisting of factors that fit into
|
arbitrarily large numbers consisting of factors that fit into
|
||||||
a long.
|
a long.
|
||||||
@@ -68,8 +68,8 @@ a long.
|
|||||||
|
|
||||||
The Obfuscated version of the Horst algorithm.
|
The Obfuscated version of the Horst algorithm.
|
||||||
|
|
||||||
This program will factor unlimited length numbers and print the
|
This program will factor unlimited length numbers and print the\
|
||||||
factors in ascending order. Numbers of one digit (e.g. 8)
|
factors in ascending order. Numbers of one digit (e.g. 8)\
|
||||||
are rejected without notice.
|
are rejected without notice.
|
||||||
|
|
||||||
It quits as soon as there is at most one factor left, but that factor will not
|
It quits as soon as there is at most one factor left, but that factor will not
|
||||||
|
|||||||
+6
-6
@@ -1,10 +1,10 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Anthony C Howe
|
Anthony C Howe\
|
||||||
Mortice Kern Systems Inc.
|
Mortice Kern Systems Inc.\
|
||||||
Unit 1, 14 Weber Street North
|
Unit 1, 14 Weber Street North\
|
||||||
Waterloo, Ontario
|
Waterloo, Ontario\
|
||||||
N2J 3G4
|
N2J 3G4\
|
||||||
Canada
|
Canada
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -44,7 +44,7 @@ Like much of POSIX, obfuscation has its place. Your task is to
|
|||||||
figure out where.
|
figure out where.
|
||||||
|
|
||||||
This entry comes complete with a Posix-like command description.
|
This entry comes complete with a Posix-like command description.
|
||||||
Interested POSIX balloters should lobby the IEEE for an obfuscated
|
Interested POSIX balloters should lobby the IEEE for an obfuscated\
|
||||||
P1003 subcommittee.
|
P1003 subcommittee.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most Obfuscated Algorithm
|
# Most Obfuscated Algorithm
|
||||||
|
|
||||||
Sean Barrett
|
Sean Barrett\
|
||||||
Software Construction Company
|
Software Construction Company\
|
||||||
430 Southwest Parkway, #1906
|
430 Southwest Parkway, #1906\
|
||||||
College Station, TX 77840
|
College Station, TX 77840\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Language Tool
|
# Best Language Tool
|
||||||
|
|
||||||
Sean Barrett
|
Sean Barrett\
|
||||||
Software Construction Company
|
Software Construction Company\
|
||||||
430 Southwest Parkway, #1906
|
430 Southwest Parkway, #1906\
|
||||||
College Station, TX 77840
|
College Station, TX 77840\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+31
-31
@@ -1,9 +1,9 @@
|
|||||||
# Most Humorous Output
|
# Most Humorous Output
|
||||||
|
|
||||||
Andreas Gustafsson
|
Andreas Gustafsson\
|
||||||
Helsinki University of Technology
|
Helsinki University of Technology\
|
||||||
Arentikuja 1 D 305
|
Arentikuja 1 D 305\
|
||||||
00410 Helsinki
|
00410 Helsinki\
|
||||||
Finland
|
Finland
|
||||||
|
|
||||||
|
|
||||||
@@ -69,16 +69,16 @@ The name of the game:
|
|||||||
AG is short for either Anagram Generator or simply AnaGram. It might also be
|
AG is short for either Anagram Generator or simply AnaGram. It might also be
|
||||||
construed to mean Alphabet Game, and by pure coincidence it happens to be the
|
construed to mean Alphabet Game, and by pure coincidence it happens to be the
|
||||||
author's initials.
|
author's initials.
|
||||||
|
\
|
||||||
|
\
|
||||||
### What it does
|
### What it does
|
||||||
|
\
|
||||||
AG takes one or more words as arguments, and tries to find anagrams of those
|
AG takes one or more words as arguments, and tries to find anagrams of those
|
||||||
words, i.e. words or sentences containing exactly the same letters.
|
words, i.e. words or sentences containing exactly the same letters.
|
||||||
|
|
||||||
|
|
||||||
### How to use it
|
### How to use it
|
||||||
|
\
|
||||||
To run AG, you need a dictionary file consisting of distinct words in the
|
To run AG, you need a dictionary file consisting of distinct words in the
|
||||||
natural language of your choice, one word on each line. If your machine doesn't
|
natural language of your choice, one word on each line. If your machine doesn't
|
||||||
have one already, you can make your own dictionary by concatenating a few
|
have one already, you can make your own dictionary by concatenating a few
|
||||||
@@ -102,7 +102,7 @@ limit can be changed using a numeric command line option, as in
|
|||||||
`./ag -4 international obfuscated c code contest </usr/dict/words`.
|
`./ag -4 international obfuscated c code contest </usr/dict/words`.
|
||||||
|
|
||||||
### Bugs
|
### Bugs
|
||||||
|
\
|
||||||
- There is no error checking.
|
- There is no error checking.
|
||||||
- Standard input must be seekable, so you can't pipe the dictionary into AG.
|
- Standard input must be seekable, so you can't pipe the dictionary into AG.
|
||||||
- The input sentence and each line in the dictionary may contain at most 32
|
- The input sentence and each line in the dictionary may contain at most 32
|
||||||
@@ -115,7 +115,7 @@ less.
|
|||||||
|
|
||||||
|
|
||||||
### Obfuscatory notes
|
### Obfuscatory notes
|
||||||
|
\
|
||||||
As you can see, AG takes advantage of the new '92 whitespace rules to
|
As you can see, AG takes advantage of the new '92 whitespace rules to
|
||||||
achieve a clear, readable, self-documenting layout. The identifiers
|
achieve a clear, readable, self-documenting layout. The identifiers
|
||||||
have been chosen in a way appropriate for an alphabet game, and common
|
have been chosen in a way appropriate for an alphabet game, and common
|
||||||
@@ -132,9 +132,9 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
Urer sbyybjf n qrfpevcgvba bs fbzr bs gur qngn fgehpgherf naq
|
Urer sbyybjf n qrfpevcgvba bs fbzr bs gur qngn fgehpgherf naq
|
||||||
nytbevguzf hfrq ol NT. Vg vf ol ab zrnaf pbzcyrgr, ohg vg znl uryc
|
nytbevguzf hfrq ol NT. Vg vf ol ab zrnaf pbzcyrgr, ohg vg znl uryc
|
||||||
lbh trg na vqrn nobhg gur trareny cevapvcyrf.
|
lbh trg na vqrn nobhg gur trareny cevapvcyrf.
|
||||||
|
\
|
||||||
--
|
--
|
||||||
|
\
|
||||||
Vagreanyyl, NT ercerfragf jbeqf naq fragraprf nf neenlf bs 32
|
Vagreanyyl, NT ercerfragf jbeqf naq fragraprf nf neenlf bs 32
|
||||||
4-ovg vagrtre ryrzragf. Rnpu ryrzrag ercerfragf gur ahzore bs
|
4-ovg vagrtre ryrzragf. Rnpu ryrzrag ercerfragf gur ahzore bs
|
||||||
gvzrf n yrggre bpphef va gur jbeq/fragrapr. Gurer ner 32 ryrzragf
|
gvzrf n yrggre bpphef va gur jbeq/fragrapr. Gurer ner 32 ryrzragf
|
||||||
@@ -142,13 +142,13 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
yrggref va zbfg jrfgrea nycunorgf, naq gur ryrzragf ner 4 ovgf
|
yrggref va zbfg jrfgrea nycunorgf, naq gur ryrzragf ner 4 ovgf
|
||||||
rnpu orpnhfr gur fnzr yrggre vf hayvxryl gb bpphe zber guna 15
|
rnpu orpnhfr gur fnzr yrggre vf hayvxryl gb bpphe zber guna 15
|
||||||
gvzrf va n cenpgvpny nantenz trarengvba ceboyrz.
|
gvzrf va n cenpgvpny nantenz trarengvba ceboyrz.
|
||||||
|
\
|
||||||
Gurfr 32*4-ovg neenlf ner npghnyyl fgberq va zrzbel va n
|
Gurfr 32*4-ovg neenlf ner npghnyyl fgberq va zrzbel va n
|
||||||
"ovg-genafcbfrq" sbezng, nf neenlf bs sbhe "ybat" inyhrf. Vg vf
|
"ovg-genafcbfrq" sbezng, nf neenlf bs sbhe "ybat" inyhrf. Vg vf
|
||||||
nffhzrq gung n "ybat" vf ng yrnfg 32 ovgf. Gur svefg 4-ovg yrggre
|
nffhzrq gung n "ybat" vf ng yrnfg 32 ovgf. Gur svefg 4-ovg yrggre
|
||||||
pbhag vf sbezrq ol gur yrnfg fvtavsvpnag (2^0) ovg va rnpu bs gur
|
pbhag vf sbezrq ol gur yrnfg fvtavsvpnag (2^0) ovg va rnpu bs gur
|
||||||
sbhe ybatf, gur arkg bar vf sbezrq ol gur 2^1 ovgf, rgp.
|
sbhe ybatf, gur arkg bar vf sbezrq ol gur 2^1 ovgf, rgp.
|
||||||
|
\
|
||||||
Guvf fgbentr sbezng znxrf vg cbffvoyr gb nqq be fhogenpg gjb fhpu
|
Guvf fgbentr sbezng znxrf vg cbffvoyr gb nqq be fhogenpg gjb fhpu
|
||||||
irpgbef bs 32 4-ovg inyhrf va cnenyyry ol fvzhyngvat n frg bs 32
|
irpgbef bs 32 4-ovg inyhrf va cnenyyry ol fvzhyngvat n frg bs 32
|
||||||
ovanel shyy nqqref va fbsgjner hfvat ovgjvfr ybtvpny bcrengvbaf.
|
ovanel shyy nqqref va fbsgjner hfvat ovgjvfr ybtvpny bcrengvbaf.
|
||||||
@@ -159,17 +159,17 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
vgrengvbaf bs n ybbc pbagnvavat fbzr 32-ovg ovgjvfr ybtvpny
|
vgrengvbaf bs n ybbc pbagnvavat fbzr 32-ovg ovgjvfr ybtvpny
|
||||||
bcrengvbaf, ohg ab nevguzrgvp bcrengvbaf bgure guna gubfr vzcyvrq
|
bcrengvbaf, ohg ab nevguzrgvp bcrengvbaf bgure guna gubfr vzcyvrq
|
||||||
ol neenl vaqrkvat.
|
ol neenl vaqrkvat.
|
||||||
|
\
|
||||||
Fhogenpgvba jbexf fvzvyneyl, naq va snpg NT bayl vzcyrzragf
|
Fhogenpgvba jbexf fvzvyneyl, naq va snpg NT bayl vzcyrzragf
|
||||||
fhogenpgvba qverpgyl, unaqyvat nqqvgvba ol zrnaf bs gur vqragvgl
|
fhogenpgvba qverpgyl, unaqyvat nqqvgvba ol zrnaf bs gur vqragvgl
|
||||||
n+o = n-(0-o).
|
n+o = n-(0-o).
|
||||||
|
\
|
||||||
Va nqqvgvba gb guvf 32*4-ovg ercerfragngvba, NT nyfb sbezf n fb-pnyyrq
|
Va nqqvgvba gb guvf 32*4-ovg ercerfragngvba, NT nyfb sbezf n fb-pnyyrq
|
||||||
"fvtangher" gung vf gur ovgjvfr BE bs gur sbhe ybatf, juvpu vf
|
"fvtangher" gung vf gur ovgjvfr BE bs gur sbhe ybatf, juvpu vf
|
||||||
rdhvinyrag gb fnlvat gung gur fvtangher bs n jbeq pbagnvaf n ybtvpny 1
|
rdhvinyrag gb fnlvat gung gur fvtangher bs n jbeq pbagnvaf n ybtvpny 1
|
||||||
va gur ovg cbfvgvbaf pbeerfcbaqvat gb yrggref bppheevat ng yrnfg bapr
|
va gur ovg cbfvgvbaf pbeerfcbaqvat gb yrggref bppheevat ng yrnfg bapr
|
||||||
va gung jbeq.
|
va gung jbeq.
|
||||||
|
\
|
||||||
Gur svefg guvat NT qbrf vf gb pbafgehpg n ybbxhc gnoyr bs 256
|
Gur svefg guvat NT qbrf vf gb pbafgehpg n ybbxhc gnoyr bs 256
|
||||||
ybatf, bar sbe rnpu 8-ovg punenpgre inyhr. Gur ragel sbe n
|
ybatf, bar sbe rnpu 8-ovg punenpgre inyhr. Gur ragel sbe n
|
||||||
punenpgre jvyy or mreb vs gung punenpgre qbrfa'g nccrne va gur
|
punenpgre jvyy or mreb vs gung punenpgre qbrfa'g nccrne va gur
|
||||||
@@ -178,50 +178,50 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
gbtrgure gur ovg znfxf sbe nyy gur yrggref va gur vachg fragrapr
|
gbtrgure gur ovg znfxf sbe nyy gur yrggref va gur vachg fragrapr
|
||||||
hfvat gur genafcbfr nqqvgvba zrgubq qrfpevorq nobir, NT sbezf gur
|
hfvat gur genafcbfr nqqvgvba zrgubq qrfpevorq nobir, NT sbezf gur
|
||||||
32*4 ovg neenl ercerfragngvba bs gur vachg fragrapr.
|
32*4 ovg neenl ercerfragngvba bs gur vachg fragrapr.
|
||||||
|
\
|
||||||
Gur arkg npgvba cresbezrq vf ernqvat gur qvpgvbanel. Gubfr jbeqf gung
|
Gur arkg npgvba cresbezrq vf ernqvat gur qvpgvbanel. Gubfr jbeqf gung
|
||||||
pbagnva yrggref abg va gur vachg fragrapr ner vzzrqvngryl qvfpneqrq.
|
pbagnva yrggref abg va gur vachg fragrapr ner vzzrqvngryl qvfpneqrq.
|
||||||
Jbeqf pbagnvavat gur evtug yrggref ohg va rkprffvir ahzoref ner
|
Jbeqf pbagnvavat gur evtug yrggref ohg va rkprffvir ahzoref ner
|
||||||
ryvzvangrq va n frcnengr purpx vaibyivat gur 32*4 ovg neenl.
|
ryvzvangrq va n frcnengr purpx vaibyivat gur 32*4 ovg neenl.
|
||||||
|
\
|
||||||
Gur erznvavat jbeqf, juvpu jvyy or ersreerq gb nf "pnaqvqngr jbeqf",
|
Gur erznvavat jbeqf, juvpu jvyy or ersreerq gb nf "pnaqvqngr jbeqf",
|
||||||
ner fgberq va 32*4-ovg ercerfragngvba, gbtrgure jvgu gurve fvtangherf
|
ner fgberq va 32*4-ovg ercerfragngvba, gbtrgure jvgu gurve fvtangherf\
|
||||||
naq bssfrgf vagb gur qvpgvbanel svyr fb gung gur cynva-grkg irefvba bs
|
naq bssfrgf vagb gur qvpgvbanel svyr fb gung gur cynva-grkg irefvba bs
|
||||||
n jbeq pna yngre or sbhaq sbe cevagvat. Guvf vasbezngvba vf xrcg va n
|
n jbeq pna yngre or sbhaq sbe cevagvat. Guvf vasbezngvba vf xrcg va n
|
||||||
ybpny "fgehpg" va gur qvpgvbanel-ernqvat shapgvba, naq zrzbel vf
|
ybpny "fgehpg" va gur qvpgvbanel-ernqvat shapgvba, naq zrzbel vf
|
||||||
nyybpngrq sbe rnpu pnaqvqngr jbeq fvzcyl ol znxvat nabgure erphefvir
|
nyybpngrq sbe rnpu pnaqvqngr jbeq fvzcyl ol znxvat nabgure erphefvir
|
||||||
pnyy gb gung shapgvba.
|
pnyy gb gung shapgvba.
|
||||||
|
\
|
||||||
Rnpu fgehpg fb nyybpngrq vf yvaxrq vagb n svkrq-fvmr unfu gnoyr bs
|
Rnpu fgehpg fb nyybpngrq vf yvaxrq vagb n svkrq-fvmr unfu gnoyr bs
|
||||||
4096 ragevrf vaqrkrq ol gur 12 ybj ovgf bs gur jbeq'f fvtangher.
|
4096 ragevrf vaqrkrq ol gur 12 ybj ovgf bs gur jbeq'f fvtangher.\
|
||||||
Jura gur qvpgvbanel-ernqvat shapgvba rapbhagref raq-bs-svyr, nyy gur
|
Jura gur qvpgvbanel-ernqvat shapgvba rapbhagref raq-bs-svyr, nyy gur
|
||||||
pnaqvqngr jbeqf unir orra fgberq va arfgrq npgvingvba erpbeqf ba gur
|
pnaqvqngr jbeqf unir orra fgberq va arfgrq npgvingvba erpbeqf ba gur
|
||||||
fgnpx, npprffvoyr guebhtu gur unfu gnoyr.
|
fgnpx, npprffvoyr guebhtu gur unfu gnoyr.
|
||||||
|
\
|
||||||
Trarengvat gur nantenzf vf gura qbar ol genirefvat gur unfu gnoyr naq
|
Trarengvat gur nantenzf vf gura qbar ol genirefvat gur unfu gnoyr naq
|
||||||
fhogenpgvat gur yrggref bs rnpu jbeq va gur unfu gnoyr sebz gur
|
fhogenpgvat gur yrggref bs rnpu jbeq va gur unfu gnoyr sebz gur
|
||||||
"pheerag fragrapr", juvpu vavgvnyyl vf gur fragrapr tvira ba gur
|
"pheerag fragrapr", juvpu vavgvnyyl vf gur fragrapr tvira ba gur
|
||||||
pbzznaq yvar.
|
pbzznaq yvar.
|
||||||
|
\
|
||||||
Gur fhogenpgvba vf cresbezrq va cnenyyry ba gur 4-ovg yrggre pbhagf
|
Gur fhogenpgvba vf cresbezrq va cnenyyry ba gur 4-ovg yrggre pbhagf
|
||||||
nf qrfpevorq nobir, naq vs nyy 32 erfhygf ner mreb, na nantenz unf
|
nf qrfpevorq nobir, naq vs nyy 32 erfhygf ner mreb, na nantenz unf
|
||||||
orra sbhaq. Vs gur erfhyg vf artngvir sbe bar be zber bs gur yrggref
|
orra sbhaq. Vs gur erfhyg vf artngvir sbe bar be zber bs gur yrggref
|
||||||
(nf vaqvpngrq ol bar be zber "1" va n irpgbe bs 32 obeebj ovgf
|
(nf vaqvpngrq ol bar be zber "1" va n irpgbe bs 32 obeebj ovgf
|
||||||
erghearq ol gur fhogenpgvba ebhgvar), gur jbeq qvq abg zngpu gur
|
erghearq ol gur fhogenpgvba ebhgvar), gur jbeq qvq abg zngpu gur
|
||||||
pheerag fragrapr naq vf vtaberq. Svanyyl, vs gur erfhyg pbagnvarq
|
pheerag fragrapr naq vf vtaberq. Svanyyl, vs gur erfhyg pbagnvarq
|
||||||
bayl abaartngvir yrggre pbhagf, jr unir sbhaq n cnegvny nantenz:
|
bayl abaartngvir yrggre pbhagf, jr unir sbhaq n cnegvny nantenz:\
|
||||||
n jbeq pbagnvavat fbzr, ohg abg nyy, bs gur yrggref va gur pheerag
|
n jbeq pbagnvavat fbzr, ohg abg nyy, bs gur yrggref va gur pheerag
|
||||||
fragrapr. Va guvf pnfr jr erphefviryl gel gb svaq na nantenz bs gur
|
fragrapr. Va guvf pnfr jr erphefviryl gel gb svaq na nantenz bs gur
|
||||||
erznvavat yrggref. Gur qrcgu bs gur erphefvba vf yvzvgrq gb gur
|
erznvavat yrggref. Gur qrcgu bs gur erphefvba vf yvzvgrq gb gur
|
||||||
znkvzhz ahzore bs jbeqf va gur nantenz, nf fcrpvsvrq ol gur hfre.
|
znkvzhz ahzore bs jbeqf va gur nantenz, nf fcrpvsvrq ol gur hfre.
|
||||||
|
\
|
||||||
Jura gur qrrcrfg erphefvba yriry unf orra ernpurq, na bcgvzvmngvba pna
|
Jura gur qrrcrfg erphefvba yriry unf orra ernpurq, na bcgvzvmngvba pna
|
||||||
or nccyvrq: orpnhfr ab shegure erphefvba jvyy or qbar, gurer vf ab
|
or nccyvrq: orpnhfr ab shegure erphefvba jvyy or qbar, gurer vf ab
|
||||||
arrq gb ybbx sbe cnegvny nantenzf, naq gurersber NT bayl arrqf gb
|
arrq gb ybbx sbe cnegvny nantenzf, naq gurersber NT bayl arrqf gb
|
||||||
purpx sbe jbeqf gung pbagnva rknpgyl gur fnzr yrggref nf gur pheerag
|
purpx sbe jbeqf gung pbagnva rknpgyl gur fnzr yrggref nf gur pheerag
|
||||||
fragrapr. Gubfr jbeqf pna or sbhaq fvzcyl ol vaqrkvat gur unfu gnoyr
|
fragrapr. Gubfr jbeqf pna or sbhaq fvzcyl ol vaqrkvat gur unfu gnoyr
|
||||||
jvgu gur fvtangher bs gur pheerag fragrapr.
|
jvgu gur fvtangher bs gur pheerag fragrapr.
|
||||||
|
\
|
||||||
Rira jura abg ba gur qrrcrfg erphefvba yriry, NT trarenyyl nibvqf
|
Rira jura abg ba gur qrrcrfg erphefvba yriry, NT trarenyyl nibvqf
|
||||||
rknzvavat nyy gur ragevrf bs gur unfu gnoyr. Gur vqrn vf gung jr ner
|
rknzvavat nyy gur ragevrf bs gur unfu gnoyr. Gur vqrn vf gung jr ner
|
||||||
abg vagrerfgrq va unfu ohpxrgf jubfr jbeqf pbagnva nal yrggref abg
|
abg vagrerfgrq va unfu ohpxrgf jubfr jbeqf pbagnva nal yrggref abg
|
||||||
@@ -231,7 +231,7 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
gubfr unfu ohpxrg vaqvprf "v" gung pbagnva mrebrf va nyy gur ovg
|
gubfr unfu ohpxrg vaqvprf "v" gung pbagnva mrebrf va nyy gur ovg
|
||||||
cbfvgvbaf jurer gur fvtangher "f" bs gur pheerag fragrapr pbagnvaf
|
cbfvgvbaf jurer gur fvtangher "f" bs gur pheerag fragrapr pbagnvaf
|
||||||
n mreb; guvf pna or rkcerffrq va P nf (v & ~f == 0).
|
n mreb; guvf pna or rkcerffrq va P nf (v & ~f == 0).
|
||||||
|
\
|
||||||
Vg vf cbffvoyr gb ybbc guebhtu nyy fhpu ahzoref va na rssvpvrag jnl ol
|
Vg vf cbffvoyr gb ybbc guebhtu nyy fhpu ahzoref va na rssvpvrag jnl ol
|
||||||
gnxvat nqinagntr bs pregnva cebcregvrf bs ovanel nevguzrgvp: ol
|
gnxvat nqinagntr bs pregnva cebcregvrf bs ovanel nevguzrgvp: ol
|
||||||
sbepvat gur ovgf pbeerfcbaqvat gb mrebrf va "f" gb barf, jr pna znxr
|
sbepvat gur ovgf pbeerfcbaqvat gb mrebrf va "f" gb barf, jr pna znxr
|
||||||
@@ -239,15 +239,15 @@ algorithms are outlined in the rot-13 encoded spoiler below.
|
|||||||
gubfr ovgf gung fubhyq erznva mreb. Sbe rknzcyr, gur sbyybjvat
|
gubfr ovgf gung fubhyq erznva mreb. Sbe rknzcyr, gur sbyybjvat
|
||||||
cebtenz cevagf nyy gubfr 16-ovg vagrtref gung pbagnva mrebrf va nyy
|
cebtenz cevagf nyy gubfr 16-ovg vagrtref gung pbagnva mrebrf va nyy
|
||||||
rira ovg cbfvgvbaf:
|
rira ovg cbfvgvbaf:
|
||||||
|
\
|
||||||
znva(){vag v=0,f=0kNNNN;qb{cevags("%04k\g",v);}juvyr(v=((v|~f)+1)&f);}
|
znva(){vag v=0,f=0kNNNN;qb{cevags("%04k\g",v);}juvyr(v=((v|~f)+1)&f);}
|
||||||
|
\
|
||||||
NT hfrf n fvzvyne zrgubq ohg jbexf va gur bccbfvgr qverpgvba, svaqvat
|
NT hfrf n fvzvyne zrgubq ohg jbexf va gur bccbfvgr qverpgvba, svaqvat
|
||||||
gur arkg ybjre inyhr jvgu mrebrf va tvira ovg cbfvgvbaf ol cebcntngvat
|
gur arkg ybjre inyhr jvgu mrebrf va tvira ovg cbfvgvbaf ol cebcntngvat
|
||||||
obeebjf npebff gubfr ovgf. Fbzr nqqvgvbany nqwhfgzragf ner znqr
|
obeebjf npebff gubfr ovgf. Fbzr nqqvgvbany nqwhfgzragf ner znqr
|
||||||
gb gur unfu gnoyr vaqrk jura vavgvngvat n erphefvir frnepu, hfvat
|
gb gur unfu gnoyr vaqrk jura vavgvngvat n erphefvir frnepu, hfvat
|
||||||
fvzvyne ovg-gjvqqyvat grpuavdhrf.
|
fvzvyne ovg-gjvqqyvat grpuavdhrf.
|
||||||
|
\
|
||||||
Jurarire na nantenz unf orra sbhaq, vg vf cevagrq ol genirefvat n
|
Jurarire na nantenz unf orra sbhaq, vg vf cevagrq ol genirefvat n
|
||||||
yvaxrq yvfg sbezrq ol fgehpgf va gur npgvingvba erpbeqf bs gur
|
yvaxrq yvfg sbezrq ol fgehpgf va gur npgvingvba erpbeqf bs gur
|
||||||
erphefvir vaibpngvbaf bs gur frnepu shapgvba, frrxvat gb gur ortvaavat
|
erphefvir vaibpngvbaf bs gur frnepu shapgvba, frrxvat gb gur ortvaavat
|
||||||
|
|||||||
+7
-7
@@ -1,11 +1,11 @@
|
|||||||
# Best Output
|
# Best Output
|
||||||
|
|
||||||
Ian Collier
|
Ian Collier\
|
||||||
Oxford University
|
Oxford University\
|
||||||
The Queen's College
|
The Queen's College\
|
||||||
High Street
|
High Street\
|
||||||
Oxford
|
Oxford\
|
||||||
OX1 4AW
|
OX1 4AW\
|
||||||
England
|
England
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -20,7 +20,7 @@ make all
|
|||||||
# text mode
|
# text mode
|
||||||
./imc -text
|
./imc -text
|
||||||
|
|
||||||
./imc
|
./imc\
|
||||||
```
|
```
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best X Program
|
# Best X Program
|
||||||
|
|
||||||
Tero Kivinen
|
Tero Kivinen\
|
||||||
Helsinki University of Technology
|
Helsinki University of Technology\
|
||||||
Klovinrinne 6b
|
Klovinrinne 6b\
|
||||||
02180 Espoo
|
02180 Espoo\
|
||||||
Finland
|
Finland
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
# Worst Abuse of the C Preprocessor
|
# Worst Abuse of the C Preprocessor
|
||||||
|
|
||||||
Ed Luke
|
Ed Luke\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -21,7 +21,7 @@ make all
|
|||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
The program uses error messages issued by the C Preprocessor to
|
The program uses error messages issued by the C Preprocessor to
|
||||||
generate its message to the world. One program's error is another
|
generate its message to the world. One program's error is another\
|
||||||
program's data!
|
program's data!
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
Marangoni Andrea
|
Marangoni Andrea\
|
||||||
Department of Computer Science at Milano
|
Department of Computer Science at Milano\
|
||||||
Via Pausula, 72
|
Via Pausula, 72\
|
||||||
62014 Corridonia (MC)
|
62014 Corridonia (MC)\
|
||||||
Italy
|
Italy
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Worst Abuse of the Rules
|
# Worst Abuse of the Rules
|
||||||
|
|
||||||
Nathan Sidwell
|
Nathan Sidwell\
|
||||||
Inmos UK
|
Inmos UK\
|
||||||
1000 Aztec West
|
1000 Aztec West\
|
||||||
Almondsbury
|
Almondsbury\
|
||||||
Bristol
|
Bristol\
|
||||||
UK BS12 4SQ
|
UK BS12 4SQ
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+6
-6
@@ -1,11 +1,11 @@
|
|||||||
# Best of Show
|
# Best of Show
|
||||||
|
|
||||||
Vern Paxson
|
Vern Paxson\
|
||||||
Lawrence Berkeley Laboratory
|
Lawrence Berkeley Laboratory\
|
||||||
Computer Systems Engineering
|
Computer Systems Engineering\
|
||||||
Bldg. 46A, Room 1123
|
Bldg. 46A, Room 1123\
|
||||||
Lawrence Berkeley Laboratory
|
Lawrence Berkeley Laboratory\
|
||||||
1 Cyclotron Rd.
|
1 Cyclotron Rd.\
|
||||||
Berkeley, CA 94720 US
|
Berkeley, CA 94720 US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Best Small Program
|
# Best Small Program
|
||||||
|
|
||||||
Brian Westley (aka Merlyn LeRoy)
|
Brian Westley (aka Merlyn LeRoy)\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|
||||||
@@ -132,10 +132,10 @@ is reasonably accurate.
|
|||||||
|
|
||||||
### Here are some cities you might like to try:
|
### Here are some cities you might like to try:
|
||||||
|
|
||||||
- New York 41 -74
|
- New York 41 -74\
|
||||||
- London 52 0
|
- London 52 0\
|
||||||
- Moscow 56 38
|
- Moscow 56 38\
|
||||||
- New Delhi 29 77
|
- New Delhi 29 77\
|
||||||
- Sydney -34 151
|
- Sydney -34 151
|
||||||
- Los Angeles 34 -118
|
- Los Angeles 34 -118
|
||||||
- Paris 45 2
|
- Paris 45 2
|
||||||
|
|||||||
+6
-6
@@ -1,9 +1,9 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Anthony Howe
|
Anthony Howe\
|
||||||
Mortice Kern Systems, Inc.
|
Mortice Kern Systems, Inc.\
|
||||||
Unit 1, 14 Weber Street North
|
Unit 1, 14 Weber Street North\
|
||||||
Waterloo, Ontario, N2J 3G4
|
Waterloo, Ontario, N2J 3G4\
|
||||||
Canada
|
Canada
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -37,9 +37,9 @@ This program demonstrates that POSIX doesn't guarantee readability. :-)
|
|||||||
|
|
||||||
Some of the features of my entry are:
|
Some of the features of my entry are:
|
||||||
|
|
||||||
- "Lengthy" POSIX.2 style specification and manual :) :)
|
- "Lengthy" POSIX.2 style specification and manual :) :)\
|
||||||
- Useful subset of POSIX.2 Extended Regular Expressions.
|
- Useful subset of POSIX.2 Extended Regular Expressions.
|
||||||
- Recursive ERE parser/compiler that generates an NFA railroad.
|
- Recursive ERE parser/compiler that generates an NFA railroad.\
|
||||||
- Lazy NFA to DFA evaluation to improve performance speed.
|
- Lazy NFA to DFA evaluation to improve performance speed.
|
||||||
- Code tested on a variety of platforms.
|
- Code tested on a variety of platforms.
|
||||||
- Make driven test script.
|
- Make driven test script.
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# "Bill Gates" Award
|
# "Bill Gates" Award
|
||||||
|
|
||||||
Chris Mills
|
Chris Mills\
|
||||||
Pagine Corporation
|
Pagine Corporation\
|
||||||
1961-A Concourse Drive
|
1961-A Concourse Drive\
|
||||||
San Jose, CA 95131
|
San Jose, CA 95131\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -20,7 +20,7 @@ entry.
|
|||||||
## To run:
|
## To run:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
DISPLAY="your_X_server_display"
|
DISPLAY="your_X_server_display"\
|
||||||
export DISPLAY
|
export DISPLAY
|
||||||
./cmills [speed] # must be run on an X11 server
|
./cmills [speed] # must be run on an X11 server
|
||||||
```
|
```
|
||||||
@@ -31,7 +31,7 @@ where:
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
From the San Jose Mercury News (May 15, 1993 page 20A "West Hackers
|
From the San Jose Mercury News (May 15, 1993 page 20A "West Hackers\
|
||||||
trounce East in computer quiz game"):
|
trounce East in computer quiz game"):
|
||||||
|
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ trounce East in computer quiz game"):
|
|||||||
[The expression on Bill Gates' face was a sight to behold, as reported
|
[The expression on Bill Gates' face was a sight to behold, as reported
|
||||||
to us by several who were there].
|
to us by several who were there].
|
||||||
|
|
||||||
You must set `$DISPLAY` in your environment or the program will
|
You must set `$DISPLAY` in your environment or the program will\
|
||||||
dump core. This is not a bug as the author documented it as
|
dump core. This is not a bug as the author documented it as
|
||||||
a feature. :-)
|
a feature. :-)
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best Abuse of the C Preprocessor
|
# Best Abuse of the C Preprocessor
|
||||||
|
|
||||||
David Gibson
|
David Gibson\
|
||||||
University of Cape Town
|
University of Cape Town\
|
||||||
1 Sweet Valley Road
|
1 Sweet Valley Road\
|
||||||
Bergvliet
|
Bergvliet\
|
||||||
7945
|
7945\
|
||||||
South Africa
|
South Africa
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -20,7 +20,7 @@ make all
|
|||||||
```
|
```
|
||||||
|
|
||||||
where:
|
where:
|
||||||
|
\
|
||||||
`datafile` is the initial pattern (default: [dgibson.data1](dgibson.data1))
|
`datafile` is the initial pattern (default: [dgibson.data1](dgibson.data1))
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
@@ -30,7 +30,7 @@ where:
|
|||||||
```
|
```
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
We have provided the shell script [dgibson.sh](dgibson.sh) to make it easier
|
We have provided the shell script [dgibson.sh](dgibson.sh) to make it easier
|
||||||
to run this entry. Run this shell script several times to
|
to run this entry. Run this shell script several times to
|
||||||
see what happens.
|
see what happens.
|
||||||
|
|||||||
+6
-6
@@ -1,9 +1,9 @@
|
|||||||
# Best Obfuscated Algorithm
|
# Best Obfuscated Algorithm
|
||||||
|
|
||||||
E. Jay Berkenbilt
|
E. Jay Berkenbilt\
|
||||||
Engineering Research Associates
|
Engineering Research Associates\
|
||||||
1595 Springhill Road
|
1595 Springhill Road\
|
||||||
Vienna, VA 22182-2235
|
Vienna, VA 22182-2235\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -44,7 +44,7 @@ We note that this also works under macOS just fine.
|
|||||||
#### Output solution to Towers of Hanoi for five rings:
|
#### Output solution to Towers of Hanoi for five rings:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./ejb 5
|
./ejb 5\
|
||||||
```
|
```
|
||||||
|
|
||||||
The format of the output for the Towers of Hanoi case is simply a
|
The format of the output for the Towers of Hanoi case is simply a
|
||||||
@@ -53,7 +53,7 @@ text description of how to solve the puzzle.
|
|||||||
#### Output solution to the Patience puzzle for six rings:
|
#### Output solution to the Patience puzzle for six rings:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./ejb -6
|
./ejb -6\
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most Obfuscated X Program
|
# Most Obfuscated X Program
|
||||||
|
|
||||||
Jon Thingvold
|
Jon Thingvold\
|
||||||
University of Oslo
|
University of Oslo\
|
||||||
Sogn Studentby 8231
|
Sogn Studentby 8231\
|
||||||
N 0858 Oslo
|
N 0858 Oslo\
|
||||||
Norway
|
Norway
|
||||||
|
|
||||||
|
|
||||||
@@ -31,7 +31,7 @@ entry.
|
|||||||
Use `h` and `l` to shift objects left or right. Use `k` to
|
Use `h` and `l` to shift objects left or right. Use `k` to
|
||||||
rotate and press SPACE to drop.
|
rotate and press SPACE to drop.
|
||||||
|
|
||||||
This program's output may be even more obfuscated when played
|
This program's output may be even more obfuscated when played\
|
||||||
on inverse video. :-)
|
on inverse video. :-)
|
||||||
|
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ on inverse video. :-)
|
|||||||
|
|
||||||
This is `jonth` (`jon's t(h)etris`) for the X Window System.
|
This is `jonth` (`jon's t(h)etris`) for the X Window System.
|
||||||
|
|
||||||
This program is also an example of data abstraction. The X array is
|
This program is also an example of data abstraction. The X array is\
|
||||||
after initialization hidden by the well defined macros `t`, `u` and `F`.
|
after initialization hidden by the well defined macros `t`, `u` and `F`.
|
||||||
|
|
||||||
This program is highly portable as it runs on a "Notebook" size SPARC.
|
This program is highly portable as it runs on a "Notebook" size SPARC.
|
||||||
|
|||||||
+6
-6
@@ -1,9 +1,9 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
Leonid A. Broukhis
|
Leonid A. Broukhis\
|
||||||
Moscow Centre of SPARC Technology
|
Moscow Centre of SPARC Technology\
|
||||||
123481 Liberty St.,
|
123481 Liberty St.,\
|
||||||
89-1-95 Moscow
|
89-1-95 Moscow\
|
||||||
Russia
|
Russia
|
||||||
|
|
||||||
|
|
||||||
@@ -34,12 +34,12 @@ where:
|
|||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
By default, the number of colors is 6. You may specify a
|
By default, the number of colors is 6. You may specify a
|
||||||
value of between 1 and 15 colors. See the author's notes
|
value of between 1 and 15 colors. See the author's notes
|
||||||
for instructions of how to play.
|
for instructions of how to play.
|
||||||
|
|
||||||
We look forward to more entries from the newer members of the
|
We look forward to more entries from the newer members of the\
|
||||||
International Internet community.
|
International Internet community.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Most Versatile Source
|
# Most Versatile Source
|
||||||
|
|
||||||
Jyrki Holopainen
|
Jyrki Holopainen\
|
||||||
Finland
|
Finland
|
||||||
|
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@ done with this bug; see the author's remarks for more details.
|
|||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
There's more than one way to get around disk quotas. :-)
|
There's more than one way to get around disk quotas. :-)
|
||||||
|
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@ These failed miserably:
|
|||||||
"dbx: fatal error: Is a directory"
|
"dbx: fatal error: Is a directory"
|
||||||
|
|
||||||
- gdb - Printed almost the same error message ": Is a directory".
|
- gdb - Printed almost the same error message ": Is a directory".
|
||||||
It was, however, possible to step through the code but
|
It was, however, possible to step through the code but\
|
||||||
not list it.
|
not list it.
|
||||||
|
|
||||||
#### Lints
|
#### Lints
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Best One Liner
|
# Best One Liner
|
||||||
|
|
||||||
Mark Plummer
|
Mark Plummer\
|
||||||
2901 Reckord Road
|
2901 Reckord Road\
|
||||||
Fallston, MD, 21047
|
Fallston, MD, 21047\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ enough args.
|
|||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
For extra credit: What happens when 'number' contains non-numeric
|
For extra credit: What happens when 'number' contains non-numeric
|
||||||
characters, and why?
|
characters, and why?
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Most Well Rounded
|
# Most Well Rounded
|
||||||
|
|
||||||
James Bonfield
|
James Bonfield\
|
||||||
England
|
England
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Obfuscated Intelligence Award
|
# Obfuscated Intelligence Award
|
||||||
|
|
||||||
Mark Schnitzius
|
Mark Schnitzius\
|
||||||
1700 Woodbury Rd. #1208
|
1700 Woodbury Rd. #1208\
|
||||||
Orlando, FL 32828
|
Orlando, FL 32828\
|
||||||
US
|
US\
|
||||||
<http://computronium.org/ioccc.html>
|
<http://computronium.org/ioccc.html>
|
||||||
|
|
||||||
|
|
||||||
@@ -58,7 +58,7 @@ What is cat?
|
|||||||
|
|
||||||
After this program prints the contents of 'file', ask it
|
After this program prints the contents of 'file', ask it
|
||||||
some questions related to the text.
|
some questions related to the text.
|
||||||
|
\
|
||||||
The author suggests the following questions when using
|
The author suggests the following questions when using
|
||||||
[schnitzi.info](schnitzi.info):
|
[schnitzi.info](schnitzi.info):
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@ The author suggests the following questions when using
|
|||||||
- Is it true that Elvis is alive?
|
- Is it true that Elvis is alive?
|
||||||
- Do colorless green ideas sleep furiously?
|
- Do colorless green ideas sleep furiously?
|
||||||
|
|
||||||
We suggest you try using the body (minus the header and signature line)
|
We suggest you try using the body (minus the header and signature line)\
|
||||||
of a Usenet article. You might want to try something from alt.flame. :-)
|
of a Usenet article. You might want to try something from alt.flame. :-)
|
||||||
|
|
||||||
NOTE: If you have a ' in the question this entry might fail.
|
NOTE: If you have a ' in the question this entry might fail.
|
||||||
|
|||||||
+16
-16
@@ -1,9 +1,9 @@
|
|||||||
# Most Irregular Expression
|
# Most Irregular Expression
|
||||||
|
|
||||||
David Van Brackle
|
David Van Brackle\
|
||||||
ISX Corporation
|
ISX Corporation\
|
||||||
1165 Northchase Parkway, Suite 120
|
1165 Northchase Parkway, Suite 120\
|
||||||
Marietta, GA 30067
|
Marietta, GA 30067\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ What happens if you use something other than valid digits?
|
|||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
\
|
||||||
The octal expression may contain:
|
The octal expression may contain:
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -112,7 +112,7 @@ Here's the grammar `('e'` denotes the empty string) :
|
|||||||
<X> ::= [0-9]<X> | [A-F]<X> | [a-f]<X> | e
|
<X> ::= [0-9]<X> | [A-F]<X> | [a-f]<X> | e
|
||||||
<O> ::= [0-7]<O> | e
|
<O> ::= [0-7]<O> | e
|
||||||
```
|
```
|
||||||
|
\
|
||||||
Here's how the grammar nonterminals map to octal state numbers:
|
Here's how the grammar nonterminals map to octal state numbers:
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -136,34 +136,34 @@ notes:
|
|||||||
O5(O2,O7,O3)char**O7;
|
O5(O2,O7,O3)char**O7;
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
/* N1 */ !(O2+=~01+01) ?
|
/* N1 */ !(O2+=~01+01) ?\
|
||||||
00:
|
00:
|
||||||
/* N2 */ !(O2-=02>01) ?
|
/* N2 */ !(O2-=02>01) ?\
|
||||||
printf("\045\157\012",O5(012,O7+01,00)):
|
printf("\045\157\012",O5(012,O7+01,00)):
|
||||||
/* O */ !(O2-=02>>01) ?
|
/* O */ !(O2-=02>>01) ?\
|
||||||
(**O7<=067 && **O7>057 ? O5(03,O7,*(*O7)++-060+010*O3):O3):
|
(**O7<=067 && **O7>057 ? O5(03,O7,*(*O7)++-060+010*O3):O3):
|
||||||
/* D */ !(O2-=-O3-~O3) ?
|
/* D */ !(O2-=-O3-~O3) ?\
|
||||||
(072>**O7 && 060<=**O7 ? O5(04,O7,012*O3-060+*(*O7)++):O3):
|
(072>**O7 && 060<=**O7 ? O5(04,O7,012*O3-060+*(*O7)++):O3):
|
||||||
/* X */ !(O2-=!O3+!!O3) ?
|
/* X */ !(O2-=!O3+!!O3) ?\
|
||||||
(**O7>057 && **O7<=071 ? O5(05,O7,*(*O7)+++O3*020-060):
|
(**O7>057 && **O7<=071 ? O5(05,O7,*(*O7)+++O3*020-060):
|
||||||
**O7<=0106 && 0101<=**O7 ? O5(05,O7,020*O3+*(*O7)++-067):
|
**O7<=0106 && 0101<=**O7 ? O5(05,O7,020*O3+*(*O7)++-067):
|
||||||
0140<**O7 && **O7<0147 ? O5(05,O7,-0127+*(*O7)+++020*O3):O3):
|
0140<**O7 && **O7<0147 ? O5(05,O7,-0127+*(*O7)+++020*O3):O3):
|
||||||
/* F */ !(O2-=02-01) ?
|
/* F */ !(O2-=02-01) ?\
|
||||||
(**O7==050 ? 050**++*O7,O5(013,O7,O5(012,O7,00)):
|
(**O7==050 ? 050**++*O7,O5(013,O7,O5(012,O7,00)):
|
||||||
**O7<056 && 054<**O7 ? 055**++*O7,-O5(06,O7,00):
|
**O7<056 && 054<**O7 ? 055**++*O7,-O5(06,O7,00):
|
||||||
054>**O7 && 052<**O7 ? 050**(*O7)++,O5(06,O7,00):
|
054>**O7 && 052<**O7 ? 050**(*O7)++,O5(06,O7,00):
|
||||||
!(**O7^0170)||!(0130^**O7) ? *++*O7,O5(05,O7,00):
|
!(**O7^0170)||!(0130^**O7) ? *++*O7,O5(05,O7,00):
|
||||||
**O7==0144||**O7==0104 ? ++*O7,O5(04,O7,00):O5(03,O7,00)):
|
**O7==0144||**O7==0104 ? ++*O7,O5(04,O7,00):O5(03,O7,00)):
|
||||||
/* T' */ !--O2 ?
|
/* T' */ !--O2 ?\
|
||||||
(**O7==052 ? O5(07,O7,O3*(*++*O7,O5(06,O7,00))):
|
(**O7==052 ? O5(07,O7,O3*(*++*O7,O5(06,O7,00))):
|
||||||
!(045-**O7) ? O5(07,O7,O3%(03+(*O7)++,O5(06,O7,00))):
|
!(045-**O7) ? O5(07,O7,O3%(03+(*O7)++,O5(06,O7,00))):
|
||||||
!(**O7^057) ? O5(07,O7,O3/(03-*++*O7,O5(06,O7,00))):O3):
|
!(**O7^057) ? O5(07,O7,O3/(03-*++*O7,O5(06,O7,00))):O3):
|
||||||
/* T */ !(O2+=01-02) ?
|
/* T */ !(O2+=01-02) ?\
|
||||||
O5(07,O7,O5(06,O7,00)):
|
O5(07,O7,O5(06,O7,00)):
|
||||||
/* E' */ !(O2+=-02/02) ?
|
/* E' */ !(O2+=-02/02) ?\
|
||||||
(!(**O7-053)?O5(011,O7,O3+(++*O7,O5(010,O7,00))):
|
(!(**O7-053)?O5(011,O7,O3+(++*O7,O5(010,O7,00))):
|
||||||
!(055^**O7) ? O5(011,O7,O3-(03+*(*O7)++,O5(010,O7,00))):O3):
|
!(055^**O7) ? O5(011,O7,O3-(03+*(*O7)++,O5(010,O7,00))):O3):
|
||||||
/* E */ !(O2-=0563&0215) ?
|
/* E */ !(O2-=0563&0215) ?\
|
||||||
O5(011,O7,O5(010,O7,00)):
|
O5(011,O7,O5(010,O7,00)):
|
||||||
/* C */ (++*O7,O3);
|
/* C */ (++*O7,O3);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
Don Dodson
|
Don Dodson\
|
||||||
AG Communication Systems
|
AG Communication Systems\
|
||||||
17239 N. 19th Ave. #1003
|
17239 N. 19th Ave. #1003\
|
||||||
Phoenix, AZ 85023
|
Phoenix, AZ 85023\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+15
-15
@@ -1,9 +1,9 @@
|
|||||||
# Most Obfuscated Packaging
|
# Most Obfuscated Packaging
|
||||||
|
|
||||||
Don Dodson
|
Don Dodson\
|
||||||
AG Communication Systems
|
AG Communication Systems\
|
||||||
17239 N. 19th Ave. #1003
|
17239 N. 19th Ave. #1003\
|
||||||
Phoenix, AZ 85023
|
Phoenix, AZ 85023\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -55,19 +55,19 @@ style hack, the [dodsond2.c](dodsond2.c) is further obfuscated.
|
|||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
Go searching for the Wumpus in the Caverns of Doom! But be careful...
|
Go searching for the Wumpus in the Caverns of Doom! But be careful...
|
||||||
There are pits and bats waiting to seal your fate, as well as a
|
There are pits and bats waiting to seal your fate, as well as a\
|
||||||
stealthy robber lurking in the shadows. Move through the rooms by
|
stealthy robber lurking in the shadows. Move through the rooms by\
|
||||||
typing the number of the adjacent room you wish to visit. You can
|
typing the number of the adjacent room you wish to visit. You can\
|
||||||
feel a breeze if there is a pit in an adjacent room. A rustling sound
|
feel a breeze if there is a pit in an adjacent room. A rustling sound\
|
||||||
will tell you that bats are nearby. The scent of the evil Wumpus can
|
will tell you that bats are nearby. The scent of the evil Wumpus can\
|
||||||
be detected from 2 rooms away.
|
be detected from 2 rooms away.
|
||||||
|
|
||||||
To win, you must find one or more arrows, determine where the Wumpus
|
To win, you must find one or more arrows, determine where the Wumpus\
|
||||||
is, and shoot him, all without falling into a pit or becoming the
|
is, and shoot him, all without falling into a pit or becoming the\
|
||||||
next meal for the Wumpus. To shoot an arrow, type `s`. Then give a
|
next meal for the Wumpus. To shoot an arrow, type `s`. Then give a\
|
||||||
list of the rooms you want to shoot into. The rooms must be
|
list of the rooms you want to shoot into. The rooms must be\
|
||||||
connected in the order you list them, or else the arrow may bounce
|
connected in the order you list them, or else the arrow may bounce\
|
||||||
back and hit you. An arrow can go through as many as four rooms.
|
back and hit you. An arrow can go through as many as four rooms.\
|
||||||
But beware that shooting an arrow and missing the Wumpus may
|
But beware that shooting an arrow and missing the Wumpus may
|
||||||
awaken him.
|
awaken him.
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Mary Ann Horton
|
Mary Ann Horton\
|
||||||
US
|
US\
|
||||||
<https://maryannhorton.com>
|
<https://maryannhorton.com>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+5
-5
@@ -1,10 +1,10 @@
|
|||||||
# Most Obfuscated Algorithm
|
# Most Obfuscated Algorithm
|
||||||
|
|
||||||
Ian Collier
|
Ian Collier\
|
||||||
Oxford University
|
Oxford University\
|
||||||
57 Wyndham Avenue (home address)
|
57 Wyndham Avenue (home address)\
|
||||||
Bolton
|
Bolton\
|
||||||
BL3 4LG
|
BL3 4LG\
|
||||||
England
|
England
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
# Best One-liner
|
# Best One-liner
|
||||||
|
|
||||||
Laurion Burchall
|
Laurion Burchall\
|
||||||
US
|
US\
|
||||||
<https://web.archive.org/web/20070711215750/http://www.netspace.org/users/ldb/>
|
<https://web.archive.org/web/20070711215750/http://www.netspace.org/users/ldb/>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best Layout
|
# Best Layout
|
||||||
|
|
||||||
Mark Schnitzius
|
Mark Schnitzius\
|
||||||
ISX Corporation
|
ISX Corporation\
|
||||||
1165 Northchase Pkwy, Suite 120
|
1165 Northchase Pkwy, Suite 120\
|
||||||
Marietta, GA 30067
|
Marietta, GA 30067\
|
||||||
US
|
US\
|
||||||
<http://computronium.org/ioccc.html>
|
<http://computronium.org/ioccc.html>
|
||||||
|
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@ schnitzi < info
|
|||||||
|
|
||||||
The program generates interesting results when its source file is
|
The program generates interesting results when its source file is
|
||||||
used as input:
|
used as input:
|
||||||
|
\
|
||||||
```sh
|
```sh
|
||||||
schnitzi < schnitzi.c
|
schnitzi < schnitzi.c
|
||||||
```
|
```
|
||||||
@@ -83,11 +83,11 @@ version of itself work identically (you'll need to redirect the
|
|||||||
output of the above command into a separate file and compile it).
|
output of the above command into a separate file and compile it).
|
||||||
You might notice some differences in the flipped version, though.
|
You might notice some differences in the flipped version, though.
|
||||||
First off, a secret message becomes visible that was not visible
|
First off, a secret message becomes visible that was not visible
|
||||||
in the original program. Also, much of the code shows up in
|
in the original program. Also, much of the code shows up in\
|
||||||
different places in the flipped program than it appeared in the
|
different places in the flipped program than it appeared in the
|
||||||
first program. My first version of this program was perfectly
|
first program. My first version of this program was perfectly\
|
||||||
symmetrical along the diagonal, but later found out there were
|
symmetrical along the diagonal, but later found out there were
|
||||||
interesting ways to break the symmetry. The best way to see this
|
interesting ways to break the symmetry. The best way to see this\
|
||||||
is to load both the original and flipped versions of the program
|
is to load both the original and flipped versions of the program
|
||||||
into an editor and switch back and forth between them rapidly.
|
into an editor and switch back and forth between them rapidly.
|
||||||
|
|
||||||
|
|||||||
+17
-17
@@ -1,9 +1,9 @@
|
|||||||
# Most Well Rounded Obfuscation
|
# Most Well Rounded Obfuscation
|
||||||
|
|
||||||
Andrew T. Shapiro
|
Andrew T. Shapiro\
|
||||||
CSES/CIRES University of Colorado
|
CSES/CIRES University of Colorado\
|
||||||
Campus Box 216
|
Campus Box 216\
|
||||||
Boulder, CO 80309-0216
|
Boulder, CO 80309-0216\
|
||||||
US
|
US
|
||||||
|
|
||||||
|
|
||||||
@@ -58,29 +58,29 @@ The basic theme (pun) of this program is:
|
|||||||
> ~~~~
|
> ~~~~
|
||||||
|
|
||||||
|
|
||||||
My entry ([shapiro.c](shapiro.c)) is mostly comment, formatted in the shape of a
|
My entry ([shapiro.c](shapiro.c)) is mostly comment, formatted in the shape of a\
|
||||||
clock. If you strip out the comments and look at the code you will
|
clock. If you strip out the comments and look at the code you will\
|
||||||
quickly realize that the comments were the important part and that
|
quickly realize that the comments were the important part and that\
|
||||||
the code does very little (see pun above). It writes (to stdout)
|
the code does very little (see pun above). It writes (to stdout)\
|
||||||
another C program ([shapiro_t2.c](shapiro_t2.c)). This is the first level of
|
another C program ([shapiro_t2.c](shapiro_t2.c)). This is the first level of\
|
||||||
obfuscation.
|
obfuscation.
|
||||||
|
|
||||||
The second program ([shapiro_t2.c](shapiro_t2.c) if you use the Makefile
|
The second program ([shapiro_t2.c](shapiro_t2.c) if you use the Makefile
|
||||||
prints a clock in the upper right hand corner of your VTxxx/ANSI display.
|
prints a clock in the upper right hand corner of your VTxxx/ANSI display.
|
||||||
|
|
||||||
Most of the surface obfuscation in the second program
|
Most of the surface obfuscation in the second program
|
||||||
([shapiro_t2.c](shapiro_t2.c))
|
([shapiro_t2.c](shapiro_t2.c))\
|
||||||
was an attempt to make it as small as possible. You should be able to
|
was an attempt to make it as small as possible. You should be able to\
|
||||||
see around this with cb(1) and some more intelligent variable names.
|
see around this with cb(1) and some more intelligent variable names.\
|
||||||
Once you get past this you will realize that the third level of
|
Once you get past this you will realize that the third level of\
|
||||||
obfuscation is a six member client/server hierarchy.
|
obfuscation is a six member client/server hierarchy.\
|
||||||
(See the [shapiro.md](shapiro.md) file for a detailed description of the
|
(See the [shapiro.md](shapiro.md) file for a detailed description of the
|
||||||
algorithm.)
|
algorithm.)
|
||||||
|
|
||||||
`lint` complains about: precedence confusion, `K` may be used before set,
|
`lint` complains about: precedence confusion, `K` may be used before set,
|
||||||
main() returns random value to invocation environment, value type used
|
main() returns random value to invocation environment, value type used\
|
||||||
inconsistently, value type declared inconsistently, function argument
|
inconsistently, value type declared inconsistently, function argument\
|
||||||
(number) used inconsistently, function returns value which is always
|
(number) used inconsistently, function returns value which is always\
|
||||||
ignored, function returns value which is sometimes ignored.
|
ignored, function returns value which is sometimes ignored.
|
||||||
All of which are harmless (famous last words).
|
All of which are harmless (famous last words).
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -1,9 +1,9 @@
|
|||||||
# Worst Abuse of the Rules
|
# Worst Abuse of the Rules
|
||||||
|
|
||||||
Szymon Rusinkiewicz
|
Szymon Rusinkiewicz\
|
||||||
Massachusetts Institute of Technology
|
Massachusetts Institute of Technology\
|
||||||
305 Memorial Dr., Room 005B
|
305 Memorial Dr., Room 005B\
|
||||||
Cambridge, Ma 02139
|
Cambridge, Ma 02139\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -26,7 +26,7 @@ make all
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
Nearly every year, one or more people would submit what they claimed
|
Nearly every year, one or more people would submit what they claimed\
|
||||||
was the world's smallest self reproducing program. While the sizes
|
was the world's smallest self reproducing program. While the sizes
|
||||||
of these submissions varied, a quick glance would reveal that they
|
of these submissions varied, a quick glance would reveal that they
|
||||||
were too big, until this entry came along.
|
were too big, until this entry came along.
|
||||||
|
|||||||
+5
-5
@@ -1,9 +1,9 @@
|
|||||||
# Best X11 Program
|
# Best X11 Program
|
||||||
|
|
||||||
Teemu Rantanen
|
Teemu Rantanen\
|
||||||
Helsinki University of Technology
|
Helsinki University of Technology\
|
||||||
Melkonkatu 5 A 8
|
Melkonkatu 5 A 8\
|
||||||
00210 Helsinki
|
00210 Helsinki\
|
||||||
Finland
|
Finland
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -33,7 +33,7 @@ The author has provided us a spoiler version:
|
|||||||
|
|
||||||
make tvr.alt
|
make tvr.alt
|
||||||
./tvr.alt altmode screensize/2 < colormapfile
|
./tvr.alt altmode screensize/2 < colormapfile
|
||||||
|
\
|
||||||
where `altmode` `1` - `4` correspond to mode `0` - `3` in the original entry and
|
where `altmode` `1` - `4` correspond to mode `0` - `3` in the original entry and
|
||||||
`altmode 0` calculates Mandelbrot/Julian sets correctly.
|
`altmode 0` calculates Mandelbrot/Julian sets correctly.
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best Short Program
|
# Best Short Program
|
||||||
|
|
||||||
Jeff Weisberg
|
Jeff Weisberg\
|
||||||
University of Rochester
|
University of Rochester\
|
||||||
Dept of Electrical Engineering
|
Dept of Electrical Engineering\
|
||||||
Computer Studies Bldg
|
Computer Studies Bldg\
|
||||||
Rochester, NY 14627
|
Rochester, NY 14627\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Worst Abuse of the C Preprocessor
|
# Worst Abuse of the C Preprocessor
|
||||||
|
|
||||||
Brian Westley (Merlyn LeRoy on Usenet)
|
Brian Westley (Merlyn LeRoy on Usenet)\
|
||||||
Digi International
|
Digi International\
|
||||||
1906 James Ave.
|
1906 James Ave.\
|
||||||
St. Paul, MN 55105
|
St. Paul, MN 55105\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|
||||||
@@ -104,7 +104,7 @@ with "verbose" turned on).
|
|||||||
The goal of the game is to escape the dungeon.
|
The goal of the game is to escape the dungeon.
|
||||||
|
|
||||||
Here is a walk-through for the game, including a few dead-ends:
|
Here is a walk-through for the game, including a few dead-ends:
|
||||||
|
\
|
||||||
### SPOILER
|
### SPOILER
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
# Best Output
|
# Best Output
|
||||||
|
|
||||||
Carlos Duarte
|
Carlos Duarte\
|
||||||
Portugal
|
Portugal
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most Humorous
|
# Most Humorous
|
||||||
|
|
||||||
Don Dodson
|
Don Dodson\
|
||||||
AG Communication Systems
|
AG Communication Systems\
|
||||||
4101 W Union Hills Dr #1104
|
4101 W Union Hills Dr #1104\
|
||||||
Glendale, AZ 85308
|
Glendale, AZ 85308\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Best Game
|
# Best Game
|
||||||
|
|
||||||
Don Dodson
|
Don Dodson\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
# Interesting Algorithm
|
# Interesting Algorithm
|
||||||
|
|
||||||
Sebastian Deorowicz
|
Sebastian Deorowicz\
|
||||||
ul. Radzionkowska 71a
|
ul. Radzionkowska 71a\
|
||||||
42-605 Tarnowskie Gory
|
42-605 Tarnowskie Gory\
|
||||||
Poland
|
Poland
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Layout
|
# Best Layout
|
||||||
|
|
||||||
Heather Downs & Selene Makarios
|
Heather Downs & Selene Makarios\
|
||||||
The Software Bungalow
|
The Software Bungalow\
|
||||||
900 High School Way, #2202
|
900 High School Way, #2202\
|
||||||
Mountain View, CA 94041
|
Mountain View, CA 94041\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+7
-7
@@ -1,8 +1,8 @@
|
|||||||
# Best Use of Obfuscation
|
# Best Use of Obfuscation
|
||||||
|
|
||||||
Leonid A. Broukhis
|
Leonid A. Broukhis\
|
||||||
46728 Crawford St., apt. 20
|
46728 Crawford St., apt. 20\
|
||||||
Fremont, CA 94539
|
Fremont, CA 94539\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -167,7 +167,7 @@ Step 6:
|
|||||||
|
|
||||||
depending on the desired "hairiness". The original (paper-based)
|
depending on the desired "hairiness". The original (paper-based)
|
||||||
algorithm was "hairy", but it didn't look as good on the screen.
|
algorithm was "hairy", but it didn't look as good on the screen.
|
||||||
|
\
|
||||||
The program cannot handle non-hairy mode 100% correctly - step 6 happens
|
The program cannot handle non-hairy mode 100% correctly - step 6 happens
|
||||||
to be
|
to be
|
||||||
|
|
||||||
@@ -190,7 +190,7 @@ the opening for step 1 is not a single line but a cross:
|
|||||||
```
|
```
|
||||||
\./
|
\./
|
||||||
/ \
|
/ \
|
||||||
|
\
|
||||||
```
|
```
|
||||||
|
|
||||||
To watch it repeatedly (as a screensaver), use:
|
To watch it repeatedly (as a screensaver), use:
|
||||||
@@ -207,7 +207,7 @@ The command line:
|
|||||||
|
|
||||||
draws the same as above. Try:
|
draws the same as above. Try:
|
||||||
|
|
||||||
```sh
|
```sh\
|
||||||
./leo Variable 1 1 | cat - /dev/tty | gs -
|
./leo Variable 1 1 | cat - /dev/tty | gs -
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -224,7 +224,7 @@ if you want to pipe the output to a printer.
|
|||||||
begin 664 spoiler1
|
begin 664 spoiler1
|
||||||
M*%1H92!C;VQO;B J:7,J('1H92!S96-R970@<W=I=&-H("T@=&AE('-P86-E
|
M*%1H92!C;VQO;B J:7,J('1H92!S96-R970@<W=I=&-H("T@=&AE('-P86-E
|
||||||
=(&)E9F]R92!I="!I<R!N;W0@82!M:7-T86ME*0II
|
=(&)E9F]R92!I="!I<R!N;W0@82!M:7-T86ME*0II
|
||||||
|
\
|
||||||
end
|
end
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Short Program
|
# Best Short Program
|
||||||
|
|
||||||
Selene Makarios & Heather Downs
|
Selene Makarios & Heather Downs\
|
||||||
The Software Bungalow
|
The Software Bungalow\
|
||||||
900 High School Way, #2202
|
900 High School Way, #2202\
|
||||||
Mountain View, CA 94041
|
Mountain View, CA 94041\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Most Obfuscated Syntax
|
# Most Obfuscated Syntax
|
||||||
|
|
||||||
Michael Savastio
|
Michael Savastio\
|
||||||
Securicor Telesciences
|
Securicor Telesciences\
|
||||||
925 1/2 Anchor St, Apt 2
|
925 1/2 Anchor St, Apt 2\
|
||||||
Philadelphia, PA 19124
|
Philadelphia, PA 19124\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best One Liner
|
# Best One Liner
|
||||||
|
|
||||||
Mark Schnitzius
|
Mark Schnitzius\
|
||||||
ISX Corporation
|
ISX Corporation\
|
||||||
3215-C Post Woods Dr.
|
3215-C Post Woods Dr.\
|
||||||
Atlanta, GA 30339
|
Atlanta, GA 30339\
|
||||||
US
|
US\
|
||||||
<http://computronium.org/ioccc.html>
|
<http://computronium.org/ioccc.html>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Abusing The Rules
|
# Abusing The Rules
|
||||||
|
|
||||||
Diomidis Spinellis
|
Diomidis Spinellis\
|
||||||
Greece
|
Greece\
|
||||||
<https://www.spinellis.gr/>
|
<https://www.spinellis.gr/>\
|
||||||
Mastodon: <https://mstdn.social/@DSpinellis>
|
Mastodon: <https://mstdn.social/@DSpinellis>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Worst Abuse of the C Preprocessor and Most Likely To Amaze
|
# Worst Abuse of the C Preprocessor and Most Likely To Amaze
|
||||||
|
|
||||||
Mark Schnitzius & David Van Brackle
|
Mark Schnitzius & David Van Brackle\
|
||||||
ISX Corporation
|
ISX Corporation\
|
||||||
1165 Northchase Parkway
|
1165 Northchase Parkway\
|
||||||
Suite 120
|
Suite 120\
|
||||||
Marietta, GA 30067
|
Marietta, GA 30067\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -53,7 +53,7 @@ never be placed on top of a smaller disk.
|
|||||||
|
|
||||||
Our program solves the Towers of Hanoi problem. Well, that's
|
Our program solves the Towers of Hanoi problem. Well, that's
|
||||||
not exactly true; actually, it's the compiler that solves the
|
not exactly true; actually, it's the compiler that solves the
|
||||||
problem. The resulting program just prints out the correct
|
problem. The resulting program just prints out the correct\
|
||||||
solution.
|
solution.
|
||||||
|
|
||||||
How do you trick a compiler into actually solving the problem?
|
How do you trick a compiler into actually solving the problem?
|
||||||
@@ -70,7 +70,7 @@ gcc hanoi.c -o hanoi -Dn=4
|
|||||||
A default value of `5` will be used for `n` if you do not define
|
A default value of `5` will be used for `n` if you do not define
|
||||||
it on the command line. The value of `n` cannot be greater than
|
it on the command line. The value of `n` cannot be greater than
|
||||||
fifteen (the compiler we used to test has a limit on the #include
|
fifteen (the compiler we used to test has a limit on the #include
|
||||||
depth). The compiler then solves the problem using binary
|
depth). The compiler then solves the problem using binary\
|
||||||
arithmetic based on whether particular symbols are defined or not.
|
arithmetic based on whether particular symbols are defined or not.
|
||||||
|
|
||||||
To loop, the program `#include`s itself. This is, of course,
|
To loop, the program `#include`s itself. This is, of course,
|
||||||
@@ -97,7 +97,7 @@ gcc hanoi.c -E -Dn=5 | grep -v \# | grep -v ^\$
|
|||||||
|
|
||||||
For an odd number of disks, the program will provide a
|
For an odd number of disks, the program will provide a
|
||||||
solution wherein the disks end up on peg 2; for an even
|
solution wherein the disks end up on peg 2; for an even
|
||||||
number of disks, they will end on peg 3. This should
|
number of disks, they will end on peg 3. This should\
|
||||||
provide some hint as to what sort of algorithm is used.
|
provide some hint as to what sort of algorithm is used.
|
||||||
|
|
||||||
We have included a [spoiler](spoiler.c) version of the program, with
|
We have included a [spoiler](spoiler.c) version of the program, with
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Best of Show
|
# Best of Show
|
||||||
|
|
||||||
Lennart Augustsson
|
Lennart Augustsson\
|
||||||
<https://web.archive.org/web/20090831055828/http://www.cs.chalmers.se/~augustss>
|
<https://web.archive.org/web/20090831055828/http://www.cs.chalmers.se/~augustss>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Numerical Obfuscation
|
# Best Numerical Obfuscation
|
||||||
|
|
||||||
John Dalbec
|
John Dalbec\
|
||||||
20 Squire's Ct. (home address)
|
20 Squire's Ct. (home address)\
|
||||||
Canfield, OH 44406
|
Canfield, OH 44406\
|
||||||
US
|
US\
|
||||||
<https://jpdalbec.people.ysu.edu>
|
<https://jpdalbec.people.ysu.edu>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -51,14 +51,14 @@ Use `./eldby` as you would `./eldby.alt` above.
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
We were impressed by the author's ability to render spheres in 3D
|
We were impressed by the author's ability to render spheres in 3D\
|
||||||
in a very small chunk of code.
|
in a very small chunk of code.
|
||||||
|
|
||||||
|
|
||||||
## Author's remarks:
|
## Author's remarks:
|
||||||
|
|
||||||
This program shows flying spheres. The program eats CPU on lesser
|
This program shows flying spheres. The program eats CPU on lesser
|
||||||
equipped systems. The program will run until termination. Terminal
|
equipped systems. The program will run until termination. Terminal\
|
||||||
must be vt100 or better with 80 columns and 24 rows or more.
|
must be vt100 or better with 80 columns and 24 rows or more.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
# Best Layout
|
# Best Layout
|
||||||
|
|
||||||
Dean Swift
|
Dean Swift\
|
||||||
Trinome Communications
|
Trinome Communications\
|
||||||
7, Jeffries Passage
|
7, Jeffries Passage\
|
||||||
Guildford
|
Guildford\
|
||||||
Surrey
|
Surrey\
|
||||||
GU1 4AP
|
GU1 4AP\
|
||||||
England
|
England
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
# Best Obfuscated Character Set Utility
|
# Best Obfuscated Character Set Utility
|
||||||
|
|
||||||
Ken Huffman
|
Ken Huffman\
|
||||||
Applied Innovation Inc
|
Applied Innovation Inc\
|
||||||
5800 Innovation Dr.
|
5800 Innovation Dr.\
|
||||||
Dublin, OH 43016
|
Dublin, OH 43016\
|
||||||
US
|
US\
|
||||||
<http://www.huffmancoding.com>
|
<http://www.huffmancoding.com>\
|
||||||
huffmancoding@gmail.com
|
huffmancoding@gmail.com
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -53,7 +53,7 @@ This filter program is really not obfuscated code. It compiles cleanly
|
|||||||
with an ANSI C compiler and comes with user documentation that even a
|
with an ANSI C compiler and comes with user documentation that even a
|
||||||
blind person could read.
|
blind person could read.
|
||||||
|
|
||||||
The program is a bidirectional filter with the output of the program
|
The program is a bidirectional filter with the output of the program\
|
||||||
suitable for its input. The output of this program, when used as input,
|
suitable for its input. The output of this program, when used as input,
|
||||||
undoes the original program filtering.
|
undoes the original program filtering.
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best X11 Entry
|
# Best X11 Entry
|
||||||
|
|
||||||
Jon Thingvold
|
Jon Thingvold\
|
||||||
University of Oslo
|
University of Oslo\
|
||||||
Gaustadveien 10B
|
Gaustadveien 10B\
|
||||||
N 0372 Oslo
|
N 0372 Oslo\
|
||||||
Norway
|
Norway\
|
||||||
http://www.uio.no/~jonth/
|
http://www.uio.no/~jonth/
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
# Best RFC Obfuscation
|
# Best RFC Obfuscation
|
||||||
|
|
||||||
Ron McFarland
|
Ron McFarland\
|
||||||
7941 Fawncreek Drive
|
7941 Fawncreek Drive\
|
||||||
Cincinnati, Ohio 45249
|
Cincinnati, Ohio 45249\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Worst Abuse of the C Preprocessor
|
# Worst Abuse of the C Preprocessor
|
||||||
|
|
||||||
Jens Schweikhardt
|
Jens Schweikhardt\
|
||||||
DFN Network Operation Center
|
DFN Network Operation Center\
|
||||||
Schlartaeckerweg 3 (home address)
|
Schlartaeckerweg 3 (home address)\
|
||||||
D-71384 Weinstadt
|
D-71384 Weinstadt\
|
||||||
Germany
|
Germany\
|
||||||
<http://www.schweikhardt.net>
|
<http://www.schweikhardt.net>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -30,8 +30,8 @@ To find the day that Easter falls on in the current year:
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
Look at the source. There is something very odd going on here.
|
Look at the source. There is something very odd going on here.\
|
||||||
Where does the real code come from if everything is a C pre-processor
|
Where does the real code come from if everything is a C pre-processor\
|
||||||
statement?
|
statement?
|
||||||
|
|
||||||
Clearly this is either the Best Use or the Worst Abuse of the
|
Clearly this is either the Best Use or the Worst Abuse of the
|
||||||
@@ -115,7 +115,7 @@ these easy to remember language elements is justified in my opinion.
|
|||||||
|
|
||||||
|
|
||||||
### The moral:
|
### The moral:
|
||||||
|
\
|
||||||
Try to be as precise as can be and no one will comprehend what you mean.
|
Try to be as precise as can be and no one will comprehend what you mean.
|
||||||
|
|
||||||
#### The formula:
|
#### The formula:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best Algorithm
|
# Best Algorithm
|
||||||
|
|
||||||
Jens Schweikhardt
|
Jens Schweikhardt\
|
||||||
DFN Network Operation Center
|
DFN Network Operation Center\
|
||||||
Schlartaeckerweg 3 (home address)
|
Schlartaeckerweg 3 (home address)\
|
||||||
D-71384 Weinstadt
|
D-71384 Weinstadt\
|
||||||
Germany
|
Germany\
|
||||||
<http://www.schweikhardt.net>
|
<http://www.schweikhardt.net>
|
||||||
|
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ minutes (`gcc -O3`).
|
|||||||
```sh
|
```sh
|
||||||
$ ./schweikh2 6
|
$ ./schweikh2 6
|
||||||
$ ./schweikh2 7 0
|
$ ./schweikh2 7 0
|
||||||
$ ./schweikh2 7 7 0
|
$ ./schweikh2 7 7 0\
|
||||||
$ ./schweikh2 8 9 -1 -67/21
|
$ ./schweikh2 8 9 -1 -67/21
|
||||||
$ ./schweikh2 8 2 2/5 -98/25
|
$ ./schweikh2 8 2 2/5 -98/25
|
||||||
$ ./schweikh2 2 1/0 1 1/0
|
$ ./schweikh2 2 1/0 1 1/0
|
||||||
@@ -152,7 +152,7 @@ $ ./schweikh2 2 1/0 1 1/0
|
|||||||
|
|
||||||
### Miscellaneous
|
### Miscellaneous
|
||||||
|
|
||||||
The diamond pattern can be continued without a break.
|
The diamond pattern can be continued without a break.\
|
||||||
For a nice printout try this on your Bourne compatible shell:
|
For a nice printout try this on your Bourne compatible shell:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
Jens Schweikhardt
|
Jens Schweikhardt\
|
||||||
DFN Network Operation Center
|
DFN Network Operation Center\
|
||||||
Schlartaeckerweg 3 (home address)
|
Schlartaeckerweg 3 (home address)\
|
||||||
D-71384 Weinstadt
|
D-71384 Weinstadt\
|
||||||
Germany
|
Germany\
|
||||||
<http://www.schweikhardt.net>
|
<http://www.schweikhardt.net>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -101,14 +101,14 @@ memory models due to the identifier `far` (to be honest: this is
|
|||||||
untested :-) ).
|
untested :-) ).
|
||||||
|
|
||||||
Does your indent cope with backslash/newline pairs inbetween
|
Does your indent cope with backslash/newline pairs inbetween
|
||||||
keywords like in "re\<newline>turn"? Solaris' indent inserts spaces
|
keywords like in "re\<newline>turn"? Solaris' indent inserts spaces\
|
||||||
and thereby renders the source uncompilable...
|
and thereby renders the source uncompilable...
|
||||||
|
|
||||||
The indented source will exhibit different semantics when indenting
|
The indented source will exhibit different semantics when indenting
|
||||||
changes the number of lines (due to using the `__LINE__` macro in an
|
changes the number of lines (due to using the `__LINE__` macro in an
|
||||||
expression).
|
expression).
|
||||||
|
|
||||||
And what about sizeof `__TIME__`? This one's for the philosophers
|
And what about sizeof `__TIME__`? This one's for the philosophers\
|
||||||
and physicists among us programmers. What is it? `sizeof (char *)`? -- no.
|
and physicists among us programmers. What is it? `sizeof (char *)`? -- no.
|
||||||
`strlen ("hh:mm:ss")`? -- no. It's the same as `sizeof __DATE__ -
|
`strlen ("hh:mm:ss")`? -- no. It's the same as `sizeof __DATE__ -
|
||||||
sizeof "no"` :-)
|
sizeof "no"` :-)
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best One Liner
|
# Best One Liner
|
||||||
|
|
||||||
Brian Westley (Merlyn LeRoy on Usenet)
|
Brian Westley (Merlyn LeRoy on Usenet)\
|
||||||
1906 James Ave.
|
1906 James Ave.\
|
||||||
St. Paul, MN 55105
|
St. Paul, MN 55105\
|
||||||
US
|
US\
|
||||||
<http://www.westley.org>
|
<http://www.westley.org>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Best of Show
|
# Best of Show
|
||||||
|
|
||||||
Carl Banks
|
Carl Banks\
|
||||||
Penn State Department of Aerospace Engineering
|
Penn State Department of Aerospace Engineering\
|
||||||
232 Hammond Building
|
232 Hammond Building\
|
||||||
University Park, PA 16802
|
University Park, PA 16802\
|
||||||
US
|
US\
|
||||||
<https://blog.aerojockey.com/post/iocccsim>
|
<https://blog.aerojockey.com/post/iocccsim>
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,9 @@
|
|||||||
# Best Encapsulation
|
# Best Encapsulation
|
||||||
|
|
||||||
Bas de Bakker
|
Bas de Bakker\
|
||||||
Pica, Centre for Library Automation
|
Pica, Centre for Library Automation\
|
||||||
Statenweg 154 B (home address)
|
Statenweg 154 B (home address)\
|
||||||
3039 JN Rotterdam
|
3039 JN Rotterdam\
|
||||||
The Netherlands
|
The Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,9 @@
|
|||||||
# Best Small Program
|
# Best Small Program
|
||||||
|
|
||||||
Bas de Bakker
|
Bas de Bakker\
|
||||||
Pica, Centre for Library Automation
|
Pica, Centre for Library Automation\
|
||||||
Statenweg 154 B (home address)
|
Statenweg 154 B (home address)\
|
||||||
3039 JN Rotterdam
|
3039 JN Rotterdam\
|
||||||
The Netherlands
|
The Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Best Object Orientation
|
# Best Object Orientation
|
||||||
|
|
||||||
Alan De Smet
|
Alan De Smet\
|
||||||
8531 Greenway Blvd. #206
|
8531 Greenway Blvd. #206\
|
||||||
Middleton, WI 53562
|
Middleton, WI 53562\
|
||||||
US
|
US\
|
||||||
<http://www.highprogrammer.com/alan/>
|
<http://www.highprogrammer.com/alan/>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,9 @@
|
|||||||
# Best Data Hiding
|
# Best Data Hiding
|
||||||
|
|
||||||
Daniel Fischer
|
Daniel Fischer\
|
||||||
VNetx.com GbR
|
VNetx.com GbR\
|
||||||
Salenbergstrasse 11 (home address)
|
Salenbergstrasse 11 (home address)\
|
||||||
D 72250 Freudenstadt
|
D 72250 Freudenstadt\
|
||||||
German Federal Republic
|
German Federal Republic
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Best Utility
|
# Best Utility
|
||||||
|
|
||||||
David Lowe
|
David Lowe\
|
||||||
US
|
US\
|
||||||
<j.david.lowe@gmail.com>
|
<j.david.lowe@gmail.com>
|
||||||
<https://github.com/dlowe>
|
<https://github.com/dlowe>
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Most Fun
|
# Most Fun
|
||||||
|
|
||||||
David Lowe
|
David Lowe\
|
||||||
US
|
US\
|
||||||
<https://github.com/dlowe>
|
<https://github.com/dlowe>
|
||||||
|
|
||||||
Neil Mix
|
Neil Mix\
|
||||||
US
|
US
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -54,7 +54,7 @@ around the border of the playing board, and decide when and where to drop
|
|||||||
it into the board. Sound easy? Of course, there's a catch...
|
it into the board. Sound easy? Of course, there's a catch...
|
||||||
|
|
||||||
### Controls
|
### Controls
|
||||||
|
\
|
||||||
Only three controls:
|
Only three controls:
|
||||||
|
|
||||||
'a' moves the current letter one position counterclockwise around
|
'a' moves the current letter one position counterclockwise around
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Obsolescent Feature
|
# Obsolescent Feature
|
||||||
|
|
||||||
Frans van Dorsselaer
|
Frans van Dorsselaer\
|
||||||
Bakker Industrial Automation
|
Bakker Industrial Automation\
|
||||||
Kaiserstraat 35
|
Kaiserstraat 35\
|
||||||
NL-2311 GP Leiden
|
NL-2311 GP Leiden\
|
||||||
The Netherlands
|
The Netherlands
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
@@ -112,7 +112,7 @@ is the same as
|
|||||||
understand this program. For an obfuscated spoiler, try
|
understand this program. For an obfuscated spoiler, try
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
./dorssel < dorssel.md
|
./dorssel < dorssel.md\
|
||||||
```
|
```
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|||||||
Loaded 100 of 263 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user