Update 1988 winning entries' README.md files
Format and typo fixes.
This commit is contained in:
1 parent
95f384ec3f
commit
15787fbdd3
7 files changed
+153
-92
No files matched your search
+9
-3
@@ -56,9 +56,10 @@ Thank you Cody for your assistance!
|
|||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
|
```sh
|
||||||
./dale hello world
|
./dale hello world
|
||||||
./dale these files are in this directory: *
|
./dale these files are in this directory: *
|
||||||
|
```
|
||||||
|
|
||||||
NOTE: in linux it might happen that core dumps are created when running this
|
NOTE: in linux it might happen that core dumps are created when running this
|
||||||
entry even though it works fine.
|
entry even though it works fine.
|
||||||
@@ -71,6 +72,11 @@ system calls.
|
|||||||
|
|
||||||
NOTE: This program assumes the ASCII character set is being used.
|
NOTE: This program assumes the ASCII character set is being used.
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
No remarks were provided by the author.
|
||||||
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
+23
-10
@@ -1,19 +1,23 @@
|
|||||||
# Best visuals
|
# Best visuals
|
||||||
|
|
||||||
Mark Isaak
|
Mark Isaak
|
||||||
Imagen Corporation
|
Imagen Corporation
|
||||||
2650 San Tomas Expy.
|
2650 San Tomas Expy.
|
||||||
Santa Clara, CA
|
Santa Clara, CA
|
||||||
95052-8101
|
95052-8101
|
||||||
USA
|
USA
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
make all
|
```sh
|
||||||
|
make all
|
||||||
|
```
|
||||||
|
|
||||||
## To run:
|
## To run:
|
||||||
|
|
||||||
./isaak
|
```sh
|
||||||
|
./isaak
|
||||||
|
```
|
||||||
|
|
||||||
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to work for
|
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to work for
|
||||||
modern systems. The problem was that the important function, a redefinition of
|
modern systems. The problem was that the important function, a redefinition of
|
||||||
@@ -25,7 +29,9 @@ alternative version. Thank you Cody for your assistance!
|
|||||||
The original version of this code is in [isaak.alt.c](isaak.alt.c).
|
The original version of this code is in [isaak.alt.c](isaak.alt.c).
|
||||||
The original entry starts with the line:
|
The original entry starts with the line:
|
||||||
|
|
||||||
|
```c
|
||||||
main(){};
|
main(){};
|
||||||
|
```
|
||||||
|
|
||||||
This works on some systems. Why? Note that `#include <stdio.h>` is given on
|
This works on some systems. Why? Note that `#include <stdio.h>` is given on
|
||||||
the last line. Why is this needed? Note the unusual calls to sprintf.
|
the last line. Why is this needed? Note the unusual calls to sprintf.
|
||||||
@@ -50,14 +56,21 @@ due to the fact that BSD style systems have an sprintf() that returns a `char *`
|
|||||||
Due to the above problems, we placed the output of this program in the file:
|
Due to the above problems, we placed the output of this program in the file:
|
||||||
isaak.encode. To read this file do:
|
isaak.encode. To read this file do:
|
||||||
|
|
||||||
uudecode < isaak.encode
|
```sh
|
||||||
cat isaak.output
|
uudecode < isaak.encode
|
||||||
|
cat isaak.output
|
||||||
|
```
|
||||||
|
|
||||||
But since Cody fixed it this is not strictly necessary. See the
|
But since Cody fixed it this is not strictly necessary. See the
|
||||||
[isaak.alt.c](isaak.alt.c) for the original source.
|
[isaak.alt.c](isaak.alt.c) for the original source.
|
||||||
|
|
||||||
FYI: We are likely to be more strict about portability in the future.
|
FYI: We are likely to be more strict about portability in the future.
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
No remarks were provided by the author.
|
||||||
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
+24
-14
@@ -1,15 +1,17 @@
|
|||||||
## Best small program
|
## Best small program
|
||||||
|
|
||||||
Maarten Litmaath
|
Maarten Litmaath
|
||||||
Free University (VU) Amsterdam
|
Free University (VU) Amsterdam
|
||||||
Department of computer science
|
Department of computer science
|
||||||
Uilenstede 72
|
Uilenstede 72
|
||||||
1183 AK Amstelveen
|
1183 AK Amstelveen
|
||||||
The Netherlands
|
The Netherlands
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
./litmaath eschew obfuscation
|
```sh
|
||||||
|
./litmaath eschew obfuscation
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
@@ -17,9 +19,10 @@
|
|||||||
Note the unusual structure:
|
Note the unusual structure:
|
||||||
|
|
||||||
|
|
||||||
while (<condition>)
|
```c
|
||||||
;
|
while (<condition>)
|
||||||
|
;
|
||||||
|
```
|
||||||
|
|
||||||
Did you notice that the body is empty?
|
Did you notice that the body is empty?
|
||||||
|
|
||||||
@@ -30,15 +33,22 @@ could make the body of the 'while' loop an 'fprintf' with interesting
|
|||||||
variables like:
|
variables like:
|
||||||
|
|
||||||
|
|
||||||
fprintf(stderr,
|
```c
|
||||||
"argv=%lo *argv=%lo **argv=%c argv[1]=%lo *argv[1]=%c argc=%d\n",
|
fprintf(stderr,
|
||||||
(long) argv, (long) *argv, *argv && **argv ? **argv : '@',
|
"argv=%lo *argv=%lo **argv=%c argv[1]=%lo *argv[1]=%c argc=%d\n",
|
||||||
(long) argv[1], argv[1] && *argv[1] ? *argv[1] : '@', argc);
|
(long) argv, (long) *argv, *argv && **argv ? **argv : '@',
|
||||||
|
(long) argv[1], argv[1] && *argv[1] ? *argv[1] : '@', argc);
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
Furthermore, it's interesting to note that only two variables are
|
Furthermore, it's interesting to note that only two variables are
|
||||||
used to achieve everything.
|
used to achieve everything.
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
No remarks were provided by the author.
|
||||||
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
@@ -1,17 +1,18 @@
|
|||||||
## Least likely to compile successfully
|
## Least likely to compile successfully
|
||||||
|
|
||||||
Ian Phillipps
|
Ian Phillipps
|
||||||
Cambridge Consultants Ltd
|
Cambridge Consultants Ltd
|
||||||
Science Park
|
Science Park
|
||||||
Milton Road
|
Milton Road
|
||||||
Cambridge CB4 4DW
|
Cambridge CB4 4DW
|
||||||
England
|
England
|
||||||
|
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
|
```sh
|
||||||
make all
|
make all
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for modern
|
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for modern
|
||||||
@@ -23,7 +24,7 @@ be `char **` :-) ) with the correct args it now works. Thank you Cody for your
|
|||||||
assistance!
|
assistance!
|
||||||
|
|
||||||
|
|
||||||
## Judges' remarks
|
## Judges' remarks:
|
||||||
|
|
||||||
Compile and run without parameters.
|
Compile and run without parameters.
|
||||||
|
|
||||||
@@ -33,6 +34,11 @@ and thus represents a new departure in text compression standards.
|
|||||||
The judges thought that this program looked like what you would get
|
The judges thought that this program looked like what you would get
|
||||||
by pounding on the keys of an old typewriter at random.
|
by pounding on the keys of an old typewriter at random.
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
No remarks were provided by the author.
|
||||||
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
+18
-9
@@ -1,29 +1,38 @@
|
|||||||
## Most useful Obfuscated C program
|
## Most useful Obfuscated C program
|
||||||
|
|
||||||
Amperif Corporation
|
Amperif Corporation
|
||||||
9232 Eton Avenue
|
9232 Eton Avenue
|
||||||
Chatsworth, CA
|
Chatsworth, CA
|
||||||
91311
|
91311
|
||||||
U.S.A.
|
U.S.A.
|
||||||
|
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
|
|
||||||
make all
|
```sh
|
||||||
|
make all
|
||||||
|
```
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
./reddy
|
```sh
|
||||||
char *(*(fun[16])();
|
./reddy
|
||||||
|
char *(*(fun[16])();
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Judges' remarks
|
## Judges' remarks:
|
||||||
|
|
||||||
This is a somewhat restricted version of a useful program that has been
|
This is a somewhat restricted version of a useful program that has been
|
||||||
posted to Usenet. What is unusual is what it is able to do so much
|
posted to Usenet. What is unusual is what it is able to do so much
|
||||||
in such little space.
|
in such little space.
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
No remarks were provided by the author.
|
||||||
|
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
+33
-21
@@ -1,45 +1,57 @@
|
|||||||
## Best abuse of C constructs
|
## Best abuse of C constructs
|
||||||
|
|
||||||
Arch D. Robison
|
Arch D. Robison
|
||||||
University of Illinois at Urbana-Champaign
|
University of Illinois at Urbana-Champaign
|
||||||
1304 W. Springfield Ave.
|
1304 W. Springfield Ave.
|
||||||
Urbana IL
|
Urbana IL
|
||||||
61801
|
61801
|
||||||
USA
|
USA
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
make all
|
```sh
|
||||||
|
make all
|
||||||
|
```
|
||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
./robison 80 10
|
```sh
|
||||||
./robison 40 16
|
./robison 80 10
|
||||||
|
./robison 40 16
|
||||||
|
```
|
||||||
|
|
||||||
The first and second parameters are optional. You might also try:
|
The first and second parameters are optional. You might also try:
|
||||||
|
|
||||||
./robison 80 2 <--- can you find the bug?
|
```sh
|
||||||
./robison 80 -246
|
./robison 80 2 # <--- can you find the bug?
|
||||||
|
./robison 80 -246
|
||||||
|
```
|
||||||
|
|
||||||
The author says:
|
## Judges' remarks:
|
||||||
|
|
||||||
> This program shows that C has many unnecessary constructs, in fact
|
|
||||||
> only "while","--", and ">=" are required. (The two assignments at
|
|
||||||
> the beginning could be avoided if "atoi" was rewritten with this
|
|
||||||
> new paradigm.) Note that the lack of both the controversial "goto"
|
|
||||||
> and assignment statements makes the meaning crystal clear. The current
|
|
||||||
> ANSI committee should look into this practical simplification of C.
|
|
||||||
|
|
||||||
The following might make an interesting benchmark:
|
The following might make an interesting benchmark:
|
||||||
|
|
||||||
./robison 100
|
```sh
|
||||||
|
./robison 100
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
[Amdahl 5890-300E with System V cc: 8.40 seconds]
|
[Amdahl 5890-300E with System V cc: 8.40 seconds]
|
||||||
|
|
||||||
We suggest that you C pre-process and perhaps C-beautify this program.
|
We suggest that you C pre-process and perhaps C-beautify this program.
|
||||||
All is not what it may appear to be in this program. Why does a whi1e
|
All is not what it may appear to be in this program. Why does a `whi1e`
|
||||||
not take a while to execute?
|
not take a while to execute?
|
||||||
|
|
||||||
|
|
||||||
|
## Author's remarks:
|
||||||
|
|
||||||
|
This program shows that C has many unnecessary constructs, in fact
|
||||||
|
only "while","--", and ">=" are required. (The two assignments at
|
||||||
|
the beginning could be avoided if "atoi" was rewritten with this
|
||||||
|
new paradigm.) Note that the lack of both the controversial "goto"
|
||||||
|
and assignment statements makes the meaning crystal clear. The current
|
||||||
|
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:
|
||||||
|
|
||||||
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||||
|
|||||||
+31
-26
@@ -8,8 +8,9 @@ Greece
|
|||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
|
```sh
|
||||||
make all
|
make all
|
||||||
|
```
|
||||||
|
|
||||||
and then type a C program into followed by EOF (usually `^D`, ctrl-d).
|
and then type a C program into followed by EOF (usually `^D`, ctrl-d).
|
||||||
|
|
||||||
@@ -19,23 +20,25 @@ Thank you Cody for your assistance!
|
|||||||
|
|
||||||
## Try:
|
## Try:
|
||||||
|
|
||||||
make clobber all
|
```sh
|
||||||
main()
|
make clobber all
|
||||||
{
|
main()
|
||||||
printf("Hello world\n");
|
{
|
||||||
}
|
printf("Hello world\n");
|
||||||
^D
|
}
|
||||||
./spinellis
|
^D
|
||||||
|
./spinellis
|
||||||
|
|
||||||
make clobber all
|
make clobber all
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
for (i = 0; i < 5; ++i)
|
for (i = 0; i < 5; ++i)
|
||||||
printf("%d\n", i);
|
printf("%d\n", i);
|
||||||
}
|
}
|
||||||
^D
|
^D
|
||||||
./spinellis
|
./spinellis
|
||||||
|
```
|
||||||
|
|
||||||
NOTE: you need to make clobber first for this entry to work right.
|
NOTE: you need to make clobber first for this entry to work right.
|
||||||
|
|
||||||
@@ -43,15 +46,17 @@ NOTE: you need to make clobber first for this entry to work right.
|
|||||||
|
|
||||||
For clang try the alt code like:
|
For clang try the alt code like:
|
||||||
|
|
||||||
make clobber alt
|
```sh
|
||||||
#include <stdio.h>
|
make clobber alt
|
||||||
main()
|
#include <stdio.h>
|
||||||
{
|
main()
|
||||||
puts("Hello world\n");
|
{
|
||||||
}
|
puts("Hello world\n");
|
||||||
^D
|
}
|
||||||
./spinellis
|
^D
|
||||||
|
./spinellis
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
NOTE: you need to make clobber first for this entry to work right.
|
NOTE: you need to make clobber first for this entry to work right.
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user