Files
ioccc/1989/ovdluhe
Landon Curt Noll 658669a73a improve .gitignore files, fix index.html links, sync CNAME
fix experimental web site links in experimental index.html

sync CNAME with https://github.com/ioccc-src/winner/blob/master/CNAME

improve .gitignore files

Added to each .gitignore file, comments on how to sort.

Put into winner .gitignore files, ignore *.dSYM files.

Put into winner .gitignore files, ignore indent.c,
indent.o and indent files.  This is done so that the
winner directory can more self contained.

We did not put into winner .gitignore files, however,
excludes of .-files as found in the top level .gitignore file.
As .-files are not allowed by mkiocccentry, the top level
.gitignore file remains sufficient.

Added to year level .gitignore files, excludes of
mkentry or iocccsize files as needed.

Sorted (via sort -d -u) all .gitignore file.
2023-12-08 04:06:44 -08:00
..
2023-12-05 22:51:27 -08:00
2023-11-01 00:47:43 -07:00
2023-10-19 05:19:58 -07:00
2023-07-06 21:49:38 -07:00

To build:

make all

To get this to compile with a modern CPP, we had to replace #D with #define.

To use:

Run the program this way:

./ovdluhe < textfile

The program stops when it reaches the end of the template buffer
by chance or is killed.

Try:

./ovdluhe < ./ovdluhe.c
./ovdluhe < ./ovdluhe.c

./ovdluhe < README.md
./ovdluhe < README.md

Alternate code:

The author suggested that one varies the definition of P from 2 through 10. As it's a #define it's easy to set up.

Alternate build:

make CFLAGS="-DP=9" clobber alt

You do not have to define P but if you do you can replace the value with whatever you wish, as long as it's an int.

Alternate use:

./ovdluhe.alt

Judges' remarks:

Run this program using your favorite text file as input. Files such as mailboxes, man pages and usenet articles are especially recommended. You will get different output each time you run it.

Author's remarks:

This program implements an "Eddington ape" - it generates random text from a supplied template. The template text file is read through stdin. The larger the template, the better the result. A maximum of 2**12 chars are used. From the template, the program calculates the statistics of chars that immediately follow a given string (correlator string) of a certain length (currently 4 - can be varied by changing the definition for P accordingly). A character is randomly chosen, weighted by its probability to occur after the correlator string. That character is printed to stdout and placed at the end of the correlator string, whose first character is discarded. Meaningful words are therefore usually preserved, the effect on sentences can be dramatically random.

You might want to vary the definition of P between 2 and 10 and observe the result.

This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved. You are free to share and adapt this file under the terms of this license:

Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

For more information, see: https://creativecommons.org/licenses/by-sa/4.0/