Fixes to thanks for fixes file
At least one entry was missing (1984/anonymous). Some entries were removed. One such entry was not ever broken but instead when I had renamed a file (to markdown) I forgot to update the DATA variable in the Makefile which then broke compilation. This was seen in the log and mistakenly believed that there was something wrong with the entry when there wasn't. Other entries removed were not fixes but notes. Various README.md files have been updated for this sometimes just formatting merely because I opened the file because for instance there is an alternate version (many by me) that is referred to. I'd not be surprised if more README.md files have to be updated for this much better system but these will be found in time when I do another pass (and some years I have not checked at all yet).
This commit is contained in:
1 parent
a7f9a722fc
commit
76cef25333
11 files changed
+405
-367
No files matched your search
+3
-3
@@ -62,10 +62,10 @@ quit # for the cat version
|
||||
|
||||
What we found amazing was how the flow of control was transferred
|
||||
between subroutines. Careful inspection will show that the array of
|
||||
pointers to functions named 'vi' refers to functions which seem to not
|
||||
pointers to functions named `vi` refers to functions which seem to not
|
||||
be directly called. Even so, these pointers to functions are being
|
||||
used as an argument to signal. Can you determine why this is being
|
||||
done and how it is being exploited?
|
||||
used as an argument to `signal()` (used both with and without an arg - but
|
||||
how?). Can you determine why this is being done and how it is being exploited?
|
||||
|
||||
Some compilers complained about this file, so we changed: `=++I` to `= ++I`.
|
||||
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
# Best Layout
|
||||
|
||||
Brian Westley (aka Merlyn Leroy on usenet)
|
||||
Starfire Consulting
|
||||
1121 Hamline Ave. N. #17
|
||||
St. Paul, MN
|
||||
55108
|
||||
US
|
||||
Brian Westley (aka Merlyn Leroy on usenet)<br>
|
||||
US<br>
|
||||
<http://www.westley.org>
|
||||
|
||||
## To build:
|
||||
|
||||
@@ -13,9 +13,8 @@ make all
|
||||
|
||||
and then type a C program into followed by EOF (usually `^D`, ctrl-d).
|
||||
|
||||
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) made a version (also
|
||||
one line) for clang. See the Alternate code section below for how to use.
|
||||
Thank you Cody for your assistance!
|
||||
An alternate version (also one-line) that will work with clang has been
|
||||
provided. See the Alternate code section below for how to use.
|
||||
|
||||
## Try:
|
||||
|
||||
@@ -61,12 +60,9 @@ NOTE: you need to make clobber first for this entry to work right.
|
||||
|
||||
## Judges' remarks:
|
||||
|
||||
We enjoyed this entry this year, however in the future programs must be able to
|
||||
We enjoyed this entry this year; however in the future programs must be able to
|
||||
be compiled from within a Makefile without the need of human intervention.
|
||||
|
||||
Meanwhile Cody was twisted enough to point out (though to be fair he felt sick
|
||||
doing this) that with a slight modification this entry can be C++ instead. We don't
|
||||
thank him for this ghastly point! :-)
|
||||
|
||||
## Author's remarks:
|
||||
|
||||
|
||||
+8
-20
@@ -1,11 +1,7 @@
|
||||
# Best layout
|
||||
|
||||
Merlyn LeRoy (Brian Westley)
|
||||
Rosemount, Inc.
|
||||
1121 Hamline Ave. N. #17
|
||||
St. Paul, MN
|
||||
55108
|
||||
U.S.A.
|
||||
US
|
||||
<http://www.westley.org>
|
||||
|
||||
## To build:
|
||||
@@ -14,8 +10,9 @@ U.S.A.
|
||||
make all
|
||||
```
|
||||
|
||||
NOTE: this version is a fixed version for modern C compilers. The Alternate
|
||||
code below is the original.
|
||||
NOTE: this version is a fixed version for modern C compilers. See the Alternate
|
||||
code section below for how to use the original.
|
||||
|
||||
|
||||
## Try:
|
||||
|
||||
@@ -23,18 +20,6 @@ code below is the original.
|
||||
./westley
|
||||
```
|
||||
|
||||
### Alternate code:
|
||||
|
||||
The alternate code in [westley.alt.c](westley.alt.c) is the original version
|
||||
submitted to the contest. If you have an old enough compiler you can run it
|
||||
like:
|
||||
|
||||
```sh
|
||||
make alt
|
||||
```
|
||||
|
||||
Use `westley.alt` as you would `westley` above.
|
||||
|
||||
## Judges' remarks:
|
||||
|
||||
Your compiler must parse
|
||||
@@ -53,10 +38,13 @@ by changing the #define line to:
|
||||
#define _ F-->00||F-OO--;
|
||||
```
|
||||
|
||||
This is what the modified code in [westley.c](westley.c) does whereas the alt
|
||||
code is the original.
|
||||
|
||||
You might enjoy looking at the output of:
|
||||
|
||||
```sh
|
||||
cc -E westley.c
|
||||
cc -E westley.alt.c
|
||||
```
|
||||
|
||||
### Alternate code:
|
||||
|
||||
+12
-16
@@ -64,12 +64,12 @@ other types of files?
|
||||
|
||||
### Alternate code:
|
||||
|
||||
The alternate code allows this entry to work successfully even with clang. [Cody
|
||||
Boone Ferguson](/winners.html#Cody_Boone_Ferguson) notes that unfortunately it's
|
||||
something of a hack or maybe even a kludge. This however seems important because
|
||||
it works well and allows for not messing with the `s` string which is quite
|
||||
complicated. Even changing the length could break functionality and indeed the
|
||||
length would have to be longer for this to work with clang.
|
||||
The alternate code allows this entry to work successfully even with clang.
|
||||
Unfortunately it's something of a hack or maybe even a kludge. This however
|
||||
seems important because it works well and allows for not messing with the `s`
|
||||
string which is quite complicated. Even changing the length could break
|
||||
functionality and indeed the length would have to be longer for this to work
|
||||
with clang.
|
||||
|
||||
How does it work? The code (which you will see in [dds.c](dds.c)) does a `return
|
||||
system(q-6);` which equates to `return system("cc a.c");` but clang by default,
|
||||
@@ -79,13 +79,12 @@ that the compilation failed with clang (because it didn't use `make` so no
|
||||
[LANDER.BAS](LANDER.BAS)) due to a return from `main()` without a return value
|
||||
and the use of functions not yet declared.
|
||||
|
||||
Now as noted since the string `s` is complicated and to not
|
||||
inadvertently mess something up Cody changed that code to `system("make a");`
|
||||
and then added the right rule to the Makefile. Thus for the alternative version
|
||||
you now need both `make` and `cc`. If you use gcc you may change the system()
|
||||
call to what was given in this description to get a more authentic feel. If you
|
||||
do this you must then run `./a.out` not `./a`! Thus to use the alternative
|
||||
version:
|
||||
Now as noted since the string `s` is complicated and to not inadvertently mess
|
||||
something up it was changed so that the code uses `system("make a");` and then an
|
||||
appropriate rule was added to the Makefile. Thus for the alternative version you
|
||||
now need both `make` and `cc`. If you use gcc you can change the `system()` call
|
||||
to what was given in this description to get a more authentic feel. If you do
|
||||
this you must then run `./a.out` not `./a`! Thus to use the alternative version:
|
||||
|
||||
```sh
|
||||
make clobber alt
|
||||
@@ -101,9 +100,6 @@ produced? How does `a.c` relate to [LANDER.BAS](LANDER.BAS)?
|
||||
This obfuscated program translates BASIC programs into obfuscated
|
||||
C programs by way of an obfuscated algorithm.
|
||||
|
||||
NOTE: Due to minor problems with some strict ANSI C compilers, we
|
||||
have supplied a more portable ANSI version.
|
||||
|
||||
|
||||
## Author's remarks:
|
||||
|
||||
|
||||
@@ -21,6 +21,10 @@ sh ./clock1
|
||||
```
|
||||
|
||||
|
||||
NOTE: the original version had a display problem in modern systems which
|
||||
somewhat affected the usability of the program. See the Alternate code section
|
||||
for details on the original version.
|
||||
|
||||
## Try:
|
||||
|
||||
|
||||
|
||||
@@ -14,6 +14,9 @@ Germany
|
||||
make all
|
||||
```
|
||||
|
||||
An alternate version for this entry works with macOS. See the Alternate code
|
||||
section below for more details.
|
||||
|
||||
|
||||
## To run:
|
||||
|
||||
@@ -23,11 +26,11 @@ make all
|
||||
|
||||
### Alternate code:
|
||||
|
||||
As noted above the alternate version works with macOS but there are some important notes as
|
||||
well as a description of how it works (spoilers for the original version as
|
||||
well).
|
||||
As noted above the alternate version works with macOS but there are some
|
||||
important notes as well as a description of how it works (spoilers for the
|
||||
original version as well).
|
||||
|
||||
An MacBook Pro Max with the M1 chip some header files report an
|
||||
With a MacBook Pro Max with the M1 chip some header files report an
|
||||
unsupported architecture and unsupported compiler (error, warning).
|
||||
However the defines are still found okay.
|
||||
|
||||
@@ -60,7 +63,14 @@ This allows for opening the right files. The problem with the macOS is
|
||||
`/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include` which is why
|
||||
the different command line and the different numbers.
|
||||
|
||||
To use this version use `schweikh1.alt` instead.
|
||||
To use this version use:
|
||||
|
||||
|
||||
```sh
|
||||
make alt
|
||||
```
|
||||
|
||||
Use `schweikh1.alt` as you would `schweikh1` above.
|
||||
|
||||
|
||||
## Judges' remarks:
|
||||
@@ -73,7 +83,7 @@ standard headers.
|
||||
|
||||
This code is a wonder; it's a wonder that it compiles. I wonder
|
||||
whether or not it should. The innovative realization that you can
|
||||
use special characters, such as `'\n'`, in #file directives alone
|
||||
use special characters, such as `'\n'`, in `#file` directives alone
|
||||
merits some recognition.
|
||||
|
||||
I've included most of the author's remarks; they're fairly thorough.
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
# Best AI
|
||||
|
||||
Doug Beardsley
|
||||
Southern Adventist University
|
||||
359 Davis Rd. NW
|
||||
Cleveland, TN 37312
|
||||
US
|
||||
|
||||
|
||||
@@ -24,7 +21,8 @@ make
|
||||
### Alternate code:
|
||||
|
||||
The author provided a way to speed it up a bit and also how to make it so it
|
||||
doesn't crash on losing.
|
||||
doesn't crash on losing. The idea that it crashes on losing was too good to
|
||||
lose but this alternate version has the former change.
|
||||
|
||||
To compile:
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Largest small system emulator
|
||||
|
||||
Adrian Cable
|
||||
<adrian.cable@gmail.com>
|
||||
Adrian Cable<br>
|
||||
<adrian.cable@gmail.com>
|
||||
|
||||
|
||||
## To build:
|
||||
|
||||
@@ -1335,6 +1335,12 @@ There was no IOCCC in 1999.
|
||||
|
||||
# 2000
|
||||
|
||||
## [2000/dlowe](2000/dlowe/dlowe.c) ([README.md](2000/dlowe/README.md))
|
||||
## STATUS: doesn't work with some platforms - please help us fix
|
||||
|
||||
This entry crashes in macOS. This will be looked at later.
|
||||
|
||||
|
||||
[2000/primenum](2000/primenum/primenum.c) ([README.md](2000/primenum/README.md))
|
||||
## STATUS: INABIAF - please **DO NOT** fix
|
||||
|
||||
@@ -1658,7 +1664,7 @@ in the process some of the generated code fails.
|
||||
|
||||
What might the translation of the comment end up being? Here's an example:
|
||||
|
||||
```
|
||||
```c
|
||||
system(" echo Line 2;sed -n -e 2,77p out> c.c;cc c.c -c ");
|
||||
```
|
||||
|
||||
@@ -1699,6 +1705,7 @@ does not exist.
|
||||
|
||||
This entry requires that `sed` and `cc` are in the path.
|
||||
|
||||
|
||||
## [2005/mynx](2005/mynx/mynx.c) ([README.md](2005/mynx/README.md))
|
||||
## STATUS: INABIAF - please **DO NOT** fix
|
||||
|
||||
@@ -2085,6 +2092,15 @@ Abort trap: 6
|
||||
|
||||
but this is expected and the file `ioccc.html` will be generated properly.
|
||||
|
||||
## [2018/poikola](2018/poikola/prog.c) ([README.md](2018/poikola/README.md]))
|
||||
## STATUS: INABIAF - please **DO NOT** fix
|
||||
|
||||
Some have reported that Terminal.app in macOS does not work and one might need a
|
||||
different terminal emulator like that from [XQuartz](https://www.xquartz.org)
|
||||
but [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) reported that this
|
||||
works fine in macOS Ventura with Terminal.app. YMMV of course.
|
||||
|
||||
|
||||
|
||||
# 2019
|
||||
|
||||
|
||||
+336
-302
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user