Merge pull request #392 from xexyl/1993-dgibson
Format fixes in 1993/dgibson/README.md
This commit is contained in:
6 files changed
+117
-88
No files matched your search
+5
-4
@@ -1,9 +1,10 @@
|
||||
# Worst Abuse of the C Preprocessor:
|
||||
|
||||
Ed Luke
|
||||
Mississippi State University
|
||||
P.O. Box 6176
|
||||
Mississippi State, MS 39762, USA
|
||||
Ed Luke
|
||||
Mississippi State University
|
||||
P.O. Box 6176
|
||||
Mississippi State, MS 39762
|
||||
USA
|
||||
|
||||
## To build:
|
||||
|
||||
|
||||
+11
-7
@@ -1,18 +1,22 @@
|
||||
# Best Game:
|
||||
|
||||
Marangoni Andrea
|
||||
Department of Computer Science at Milano
|
||||
Via Pausula, 72
|
||||
62014 Corridonia (MC)
|
||||
Italy
|
||||
Marangoni Andrea
|
||||
Department of Computer Science at Milano
|
||||
Via Pausula, 72
|
||||
62014 Corridonia (MC)
|
||||
Italy
|
||||
|
||||
## To build:
|
||||
|
||||
make all
|
||||
```sh
|
||||
make all
|
||||
```
|
||||
|
||||
## To run:
|
||||
|
||||
./marangon
|
||||
```sh
|
||||
./marangon
|
||||
```
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
|
||||
+26
-19
@@ -1,27 +1,34 @@
|
||||
# Worst Abuse of the Rules:
|
||||
# Worst Abuse of the Rules
|
||||
|
||||
Nathan Sidwell
|
||||
Inmos UK
|
||||
1000 Aztec West
|
||||
Almondsbury
|
||||
Bristol
|
||||
UK BS12 4SQ
|
||||
Nathan Sidwell
|
||||
Inmos UK
|
||||
1000 Aztec West
|
||||
Almondsbury
|
||||
Bristol
|
||||
UK BS12 4SQ
|
||||
|
||||
## To build:
|
||||
|
||||
make all
|
||||
```sh
|
||||
make all
|
||||
```
|
||||
|
||||
## To run
|
||||
|
||||
./nathan
|
||||
```sh
|
||||
./nathan
|
||||
```
|
||||
|
||||
## Judges' comments
|
||||
## Try:
|
||||
|
||||
Try:
|
||||
```sh
|
||||
./nathan obfuscate < nathan.c > foobarf.c
|
||||
./nathan - obfuscate < foobarf.c > barfoof.c
|
||||
diff nathan.c barfoof.c
|
||||
```
|
||||
|
||||
./nathan obfuscate < nathan.c > foobarf.c
|
||||
./nathan - obfuscate < foobarf.c > barfoof.c
|
||||
diff nathan.c barfoof.c
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
### WARNING:
|
||||
|
||||
@@ -77,7 +84,7 @@ re-distribute a program contest winner to the network!
|
||||
|
||||
## Author's comments
|
||||
|
||||
### PROGRAM USE
|
||||
### PROGRAM USE:
|
||||
|
||||
This program is a hello world text encryptor/decryptor. It uses an
|
||||
enigma (I think) style encryption algorithm, where the encryption
|
||||
@@ -93,12 +100,12 @@ before the key. (Actually encryption and decryption proper inverse
|
||||
operations, so you can use decrypt to scramble and encrypt to
|
||||
descramble, if you're perverse.)
|
||||
|
||||
### PORTABILITY (A little knowledge is a dangerous thing)
|
||||
### PORTABILITY (A little knowledge is a dangerous thing):
|
||||
|
||||
It's written in ANSI C, and doesn't even assume an ASCII character
|
||||
set, (it has an array of the characters to convert), so should be
|
||||
portable across many platforms. It passes gcc -ansi -pedantic -O
|
||||
-Wall with no warnings (You may get assignment in conditional
|
||||
portable across many platforms. It passes `gcc -ansi -pedantic -O
|
||||
-Wall` with no warnings (You may get assignment in conditional
|
||||
warnings on other platforms though). Because I've heard that
|
||||
conditional jumps slow down fast processors, I've eliminated all
|
||||
the ifs from the code, indeed, as its only one statement, it should
|
||||
@@ -109,7 +116,7 @@ another scoping level does not need to be opened.
|
||||
Being an encryptor/decryptor, you probably want the source code to
|
||||
be obfuscated, to hide the algorithm.
|
||||
|
||||
### OBFUSCATION
|
||||
### OBFUSCATION:
|
||||
|
||||
In spite of the fact that it looks like a nice friendly hello world
|
||||
program, it isn't (as documented above). (Short lines have been padded,
|
||||
|
||||
+17
-11
@@ -1,31 +1,37 @@
|
||||
# Best Utility:
|
||||
|
||||
Anthony Howe
|
||||
Mortice Kern Systems, Inc.
|
||||
Unit 1, 14 Weber Street North,
|
||||
Waterloo, Ontario, N2J 3G4
|
||||
Canada
|
||||
Anthony Howe
|
||||
Mortice Kern Systems, Inc.
|
||||
Unit 1, 14 Weber Street North
|
||||
Waterloo, Ontario, N2J 3G4
|
||||
Canada
|
||||
|
||||
## To build:
|
||||
|
||||
make all
|
||||
```sh
|
||||
make all
|
||||
```
|
||||
|
||||
## To run:
|
||||
|
||||
./ant 'ERE' [file ...]
|
||||
```sh
|
||||
./ant 'ERE' [file ...]
|
||||
```
|
||||
|
||||
## Try:
|
||||
|
||||
You may also want to try the author's test suite:
|
||||
|
||||
make -f ant.test.mk
|
||||
```sh
|
||||
make -f ant.test.mk
|
||||
```
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
See the author's Posix P1003.2-like documentation file ant.txt
|
||||
for more information.
|
||||
See the author's POSIX P1003.2-like documentation file ant.txt for more
|
||||
information.
|
||||
|
||||
This program demonstrates that Posix doesn't guarantee readability. :-)
|
||||
This program demonstrates that POSIX doesn't guarantee readability. :-)
|
||||
|
||||
## Author's comments:
|
||||
|
||||
|
||||
+24
-20
@@ -1,14 +1,16 @@
|
||||
# "Bill Gates" Award:
|
||||
|
||||
Chris Mills
|
||||
Pagine Corporation
|
||||
1961-A Concourse Drive
|
||||
San Jose, CA 95131
|
||||
USA
|
||||
Chris Mills
|
||||
Pagine Corporation
|
||||
1961-A Concourse Drive
|
||||
San Jose, CA 95131
|
||||
USA
|
||||
|
||||
## To build:
|
||||
|
||||
make all
|
||||
```sh
|
||||
make all
|
||||
```
|
||||
|
||||
NOTE: this entry requires `X11/Xlib.h` header file and the X11 library to
|
||||
compile. macOS users running Mountain Lion and later will need to download and
|
||||
@@ -17,13 +19,15 @@ entry.
|
||||
|
||||
## To run:
|
||||
|
||||
DISPLAY="your_X_server_display"
|
||||
export DISPLAY
|
||||
./cmills [speed] # must be run on an X11 server
|
||||
```sh
|
||||
DISPLAY="your_X_server_display"
|
||||
export DISPLAY
|
||||
./cmills [speed] # must be run on an X11 server
|
||||
```
|
||||
|
||||
where:
|
||||
where:
|
||||
|
||||
speed update speed from 1 to 9 (default is 9)
|
||||
`speed` is update speed from 1 to 9 (default is 9).
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
@@ -31,19 +35,19 @@ From the San Jose Mercury News (May 15, 1993 page 20A "West Hackers
|
||||
trounce East in computer quiz game"):
|
||||
|
||||
|
||||
"Since 1984, a contest has been held on Usenet for the most
|
||||
unreadable, creative, bizarre but working C program", Gates
|
||||
said. "What is the name of this contest?"
|
||||
|
||||
"Windows," shot back Gassee, naming Microsoft's premier product
|
||||
- a product over which Apple sued Microsoft five years ago. Not
|
||||
the right answer - it's "The Obfuscated C Contest [sic]" - but
|
||||
it brought down the house of Apple partisans...
|
||||
> "Since 1984, a contest has been held on Usenet for the most
|
||||
> unreadable, creative, bizarre but working C program", Gates
|
||||
> said. "What is the name of this contest?"
|
||||
>
|
||||
> "Windows," shot back Gassee, naming Microsoft's premier product
|
||||
> - a product over which Apple sued Microsoft five years ago. Not
|
||||
> the right answer - it's "The Obfuscated C Contest [sic]" - but
|
||||
> it brought down the house of Apple partisans...
|
||||
|
||||
[The expression on Bill Gates' face was a sight to behold, as reported
|
||||
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
|
||||
a feature. :-)
|
||||
|
||||
|
||||
+34
-27
@@ -1,63 +1,70 @@
|
||||
# Best Abuse of the C Preprocessor:
|
||||
|
||||
David Gibson
|
||||
University of Cape Town
|
||||
|
||||
1 Sweet Valley Road
|
||||
Bergvliet
|
||||
7945
|
||||
South Africa
|
||||
David Gibson
|
||||
University of Cape Town
|
||||
1 Sweet Valley Road
|
||||
Bergvliet
|
||||
7945
|
||||
South Africa
|
||||
|
||||
## To build:
|
||||
|
||||
make all
|
||||
```sh
|
||||
make all
|
||||
```
|
||||
|
||||
## To run
|
||||
## To run:
|
||||
|
||||
./dgibson.sh [datafile]
|
||||
```sh
|
||||
./dgibson.sh [datafile]
|
||||
```
|
||||
|
||||
where:
|
||||
|
||||
|
||||
datafile initial pattern (default: dgibson.data1)
|
||||
|
||||
`datafile` is the initial pattern (default: dgibson.data1)
|
||||
|
||||
## Try:
|
||||
|
||||
|
||||
./dgibson.sh dgibson.data3
|
||||
```sh
|
||||
./dgibson.sh dgibson.data3
|
||||
```
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
We have provided the shell script `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
|
||||
see what happens.
|
||||
|
||||
There are a number of data files available:
|
||||
|
||||
dgibson.data1
|
||||
dgibson.data2
|
||||
dgibson.data3
|
||||
dgibson.data4
|
||||
dgibson.data5
|
||||
- [dgibson.data1](dgibson.data1)
|
||||
- [dgibson.data2](dgibson.data2)
|
||||
- [dgibson.data3](dgibson.data3)
|
||||
- [dgibson.data4](dgibson.data4)
|
||||
- [dgibson.data5](dgibson.data5)
|
||||
|
||||
For `dgibson.data5` you will need a large screen, lots of virtual
|
||||
For [dgibson.data5](dgibson.data5) you will need a large screen, lots of virtual
|
||||
memory and lots of time!
|
||||
|
||||
Good luck trying to use a debugger on this entry! Life is not
|
||||
always pretty.
|
||||
|
||||
## Author's comments
|
||||
## Author's comments:
|
||||
|
||||
This program plays the Game of Life.
|
||||
This program plays the [Game of
|
||||
Life](https://en.wikipedia.org/wiki/Conway's_Game_of_Life).
|
||||
|
||||
Life is a cellular automaton invented by J. H. Conway, in which each of
|
||||
a rectangular grid of cells can be alive or dead, and cells with more
|
||||
than 3 or less than 2 (out of 8) live neighbours die, and empty cells
|
||||
with exactly 3 neighbours give birth.
|
||||
|
||||
Some notes: the "STAT n" information does not have to be present in the
|
||||
initial configuration; the initial configuration should not have live
|
||||
cells around the edges; the grid should be a perfect rectangle.
|
||||
### Some notes:
|
||||
|
||||
- the "STAT n" information does not have to be present in the initial
|
||||
configuration
|
||||
- the initial configuration should not have live cells around the edges
|
||||
- the grid should be a perfect rectangle.
|
||||
|
||||
Further features: the current generation number is preserved, and the
|
||||
grid automatically resizes itself as the object gets too big or too
|
||||
|
||||
Reference in new issue
Block a user