Prepare for the winners of **IOCCC28**. > However these are not the 2024 droids you are looking for. :-) The HTML menu (both JavaScript and non-JavaScript) has been updated. The `Status -> Rules and guidelines' have been replaced with two separate menus `Status -> IOCCC rules` and `Status -> IOCCC guidelines`. Added a new top level `social.html` page: built from a new `social.md`. Sorted rules for building specific web pages in the top level `Makefile`. Added `make social` to make the `social.html` page from `social.md`. The `bin/gen-top-html.sh` now is able to process a argument of **social** to process the new top level `social.html` page. Changed `bin/gen-top-html.sh` VERSION from "2.0.0 2025-03-13" to "2.0.1 2025-07-25". Below `About -> Home page` a new `About -> IOCCC social media` menu item as added. Because the menu change touched every HTML file, we changed the general copyright date range for HTML files from "1984-2024" to "1984-2025" due to the extensive changes made for **IOCCC28**. Those markdown files that were modified in 2025 had their copyright date range also changed from "1984-2024" to "1984-2025". Rebuilt tarballs and sitemap due to the extensive HTML rebuilding. Ran `make update` to perform the above.
To build:
make
To use:
./hoyle point ...
Try:
./try.sh
Judges' remarks:
The obfuscation functions at several levels. Note the clever
use of use of #defines. The #define do(if,else), for example,
is delightful. The code itself contains a bunch of curves
designed to throw you off axis. :-)
Author's remarks:
This application graphs polynomials on a standard Cartesian coordinate system.
Polynomials of the form ax^0 + bx^1 + cx^2 + ... are graphed by passing the
coefficients a, b, c, etc. as double precision arguments. It allows up to
8 parameters (thus up to x^7).
Points of interest:
- the x axis goes from
-32to+31. - the y axis auto scales!
- up to 8 coefficients may be passed in.
- the graph will determine direction and use slashes and
dashes rather than a simple block of
Xs.
For example, to graph y = x^2:
./hoyle 0 0 1
Note that:
./hoyle 0 0 2
will produce the same graph, since the y-axis is auto scaling.