Files
ioccc/1998/index.html
T
Landon Curt Noll 6b950a2e3c change references to post Great Fork Merge URLs
In preparation for the **Great Fork Merge**:

We change references for the repo from
`https://github.com/ioccc-src/temp-test-ioccc`
to `https://github.com/ioccc-src/winner`.

We change references for the web site from
`https://ioccc-src.github.io/temp-test-ioccc`
to `https://github.com/ioccc-src/winner`.

NOTE: There will be a **LOT OF LINKS BROKEN**, because of the changes
to the REPO URL and the WEBSITE URL, until the **Great Fork Merge**
updates the+[official IOCCC website](https://www.ioccc.org).
2024-12-28 21:56:40 -08:00

643 lines
24 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- START: two lines up starts content from: inc/top.default.html -->
<!-- END: this line ends content from: inc/top.default.html -->
<!-- START: this line starts content from: inc/head.default.html -->
<head>
<link rel="stylesheet" href="../ioccc.css">
<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap" rel="stylesheet">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>1998 - The 14th IOCCC</title>
<link rel="icon" type="image/x-icon" href="../favicon.ico">
<meta name="description" content="IOCCC Year 1998">
<meta name="keywords" content="IOCCC, 1998, IOCCC 1998, IOCCC entry, The 14th IOCCC">
</head>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- END: this line ends content from: inc/head.default.html -->
<!-- -->
<!-- This web page was formed via the tool: bin/gen-year-index.sh -->
<!-- The content of main section of this web page came from: 1998/README.md -->
<!-- -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! Do not modify this web page, instead modify the file: 1998/README.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 1998/README.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 1998/README.md !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- Markdown content was converted into HTML via the tool: bin/md2html.sh -->
<!-- START: this line starts content from: inc/body.default.html -->
<body>
<!-- END: this line ends content from: inc/body.default.html -->
<!-- START: this line starts content from: inc/topbar.default.html -->
<div class="theader">
<nav class="topbar">
<div class="container">
<div class="logo">
<a href="../index.html" class="logo-link">
IOCCC
</a>
</div>
<div class="topbar-items">
<div class="item">
<span class="item-header">
Entries
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../years.html" class="sub-item-link">
Winning entries
</a>
</div>
<div class="outfit-font">
<a href="../authors.html" class="sub-item-link">
Winning authors
</a>
</div>
<div class="outfit-font">
<a href="../location.html" class="sub-item-link">
Location of authors
</a>
</div>
<div class="outfit-font">
<a href="../bugs.html" class="sub-item-link">
Bugs and (mis)features
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#fix_an_entry" class="sub-item-link">
Fixing entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#fix_author" class="sub-item-link">
Updating author info
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
Status
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../news.html" class="sub-item-link">
News
</a>
</div>
<div class="outfit-font">
<a href="../status.html" class="sub-item-link">
Contest status
</a>
</div>
<div class="outfit-font">
<a href="../next/index.html" class="sub-item-link">
Rules and guidelines
</a>
</div>
<div class="outfit-font">
<a href="../markdown.html" class="sub-item-link">
Markdown guidelines
</a>
</div>
<div class="outfit-font">
<a href="../SECURITY.html" class="sub-item-link">
Security policy
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
FAQ
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../faq.html" class="sub-item-link">
Frequently Asked Questions
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#enter" class="sub-item-link">
Enter the IOCCC
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#compiling" class="sub-item-link">
Compiling entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#running_entries" class="sub-item-link">
Running entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#help" class="sub-item-link">
How to help
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
About
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../index.html" class="sub-item-link">
Home page
</a>
</div>
<div class="outfit-font">
<a href="../about.html" class="sub-item-link">
About the IOCCC
</a>
</div>
<div class="outfit-font">
<a href="../judges.html" class="sub-item-link">
The Judges
</a>
</div>
<div class="outfit-font">
<a href="../thanks-for-help.html" class="sub-item-link">
Thanks for the help
</a>
</div>
<div class="outfit-font">
<a href="../contact.html" class="sub-item-link">
Contact us
</a>
</div>
</div>
</div>
</div>
</div>
</nav>
<div class="header-mobile-menu">
<noscript>
<a href="../nojs-menu.html" class="topbar-js-label">
Please Enable JavaScript
</a>
</noscript>
<button id="header-open-menu-button" class="topbar-mobile-menu">
<img
src="../png/hamburger-icon-open.png"
alt="hamburger style menu icon - open state"
width=48
height=48>
</button>
<button id="header-close-menu-button" class="hide-content">
<img
src="../png/hamburger-icon-closed.png"
alt="hamburger style menu icon - closed state"
width=48
height=48>
</button>
<div id="mobile-menu-panel" class="hide-content">
<div class="mobile-menu-container">
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
Entries
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../years.html">
Winning entries
</a>
<a class="mobile-submenu-item" href="../authors.html">
Winning authors
</a>
<a class="mobile-submenu-item" href="../location.html">
Location of authors
</a>
<a class="mobile-submenu-item" href="../bugs.html">
Bugs and (mis)features
</a>
<a class="mobile-submenu-item" href="../faq.html#fix_an_entry">
Fixing entries
</a>
<a class="mobile-submenu-item" href="../faq.html#fix_author">
Updating author info
</a>
<a class="mobile-submenu-item" href="../thanks-for-help.html">
Thanks for the help
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
Status
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../news.html">
News
</a>
<a class="mobile-submenu-item" href="../status.html">
Contest status
</a>
<a class="mobile-submenu-item" href="../next/index.html">
Rules and guidelines
</a>
<a class="mobile-submenu-item" href="../markdown.html">
Markdown guidelines
</a>
<a class="mobile-submenu-item" href="../SECURITY.html">
Security policy
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
FAQ
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../faq.html">
Frequently Asked Questions
</a>
<a class="mobile-submenu-item" href="../faq.html#enter">
Enter the IOCCC
</a>
<a class="mobile-submenu-item" href="../faq.html#compiling">
Compiling entries
</a>
<a class="mobile-submenu-item" href="../faq.html#running_entries">
Running entries
</a>
<a class="mobile-submenu-item" href="../faq.html#help">
How to help
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
About
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../index.html">
Home page
</a>
<a class="mobile-submenu-item" href="../about.html">
About the IOCCC
</a>
<a class="mobile-submenu-item" href="../judges.html">
The Judges
</a>
<a class="mobile-submenu-item" href="../contact.html">
Contact us
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
var headerOpenMenuButton = document.getElementById("header-open-menu-button");
var headerCloseMenuButton = document.getElementById("header-close-menu-button");
var mobileMenuPanel = document.getElementById("mobile-menu-panel");
headerOpenMenuButton.addEventListener("click", () => {
headerOpenMenuButton.classList.remove("topbar-mobile-menu");
headerOpenMenuButton.classList.add("hide-content");
headerCloseMenuButton.classList.remove("hide-content");
headerCloseMenuButton.classList.add("topbar-mobile-menu");
mobileMenuPanel.classList.remove("hide-content");
mobileMenuPanel.classList.add("topbar-mobile-panel");
});
headerCloseMenuButton.addEventListener("click", () => {
headerCloseMenuButton.classList.remove("topbar-mobile-menu");
headerCloseMenuButton.classList.add("hide-content");
mobileMenuPanel.classList.add("hide-content");
mobileMenuPanel.classList.remove("topbar-mobile-panel");
headerOpenMenuButton.classList.add("topbar-mobile-menu");
headerOpenMenuButton.classList.remove("hide-content");
});
</script>
<!-- END: this line ends content from: inc/topbar.default.html -->
<!-- START: this line starts content from: inc/header.default.html -->
<div class="header">
<a href="../2011/zucker/index.html">
<img src="../png/ioccc.png"
alt="IOCCC image by Matt Zucker"
width=300
height=110>
</a>
<h1>The International Obfuscated C Code Contest</h1>
<h2>1998 - The 14th IOCCC</h2>
</div>
<!-- END: this line ends content from: inc/header.default.html -->
<!-- START: this line starts content from: inc/navbar.year.mid.html -->
<div class="navbar">
<a class="Left" href="../1996/index.html">&larr; 1996</a>
<a class="Left" href="../years.html">&uarr; top &uarr;</a>
<a class="Left" href="../2000/index.html">2000 &rarr;</a>
<a class="Right" href="#inventory">Inventory</a>
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F1998%2Findex.html">&#x2713;</a>
</div>
<!-- END: this line ends content from: inc/navbar.year.mid.html -->
<!-- START: this line starts content from: inc/before-content.default.html -->
<div class="content" id="content">
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- BEFORE: 1st line of markdown file: 1998/README.md -->
<h1 id="fourteenth-international-obfuscated-c-code-contest">Fourteenth International Obfuscated C Code Contest</h1>
<h2 id="standard-ioccc-stuff">Standard IOCCC stuff</h2>
<p>View the <code>index.html</code> web page for the given winning entry for information on how
on how to compile it and how to run the winning program.
Look at the winning source and try to figure how it does what it does!
You may then wish to look at the Author’s remarks for even more details.</p>
<p>Some ANSI C compilers are not quite as good as they should be. If
yours is lacking, you may need to compile using gcc instead of your
local compiler.</p>
<p>The IOCCC has an official home page: <a href="https://www.ioccc.org">www.ioccc.org</a>.</p>
<h2 id="new-judges">New Judges</h2>
<p>Larry Bassel is now a graduate student in number theory at UC San Diego.
Barbara Frezza also went to San Diego to enter into law school at the
same time. Her cooking in the role of official chef was sorely missed.
Both Larry and Barbara have taken important new steps in their lives.
We wish them the best.</p>
<p>Landon was unable to contact Sriram Srinivasan at the start of
the 1998 IOCCC season. Having not heard from Sriram, Landon put out
a call for new IOCCC judges. A number of excellent people applied.</p>
<p>Landon selected Leonid A. Broukhis, a two time IOCCC winning author, as a
co-judge. Landon and Leo together selected Jeremy Horn and Peter
Seebach. The four <a href="https://www.ioccc.org/judges.html">judges</a> together worked
thru-out the 1998 IOCCC season.</p>
<h3 id="note-about-judges">2023 note about judges:</h3>
<p>The number of judges now is only 2, Landon Curt Noll and Leonid A. Broukhis.</p>
<h2 id="remarks-on-some-of-the-entries">Remarks on some of the entries</h2>
<p>This year, <a href="../authors.html#Jens_Schweikhardt">Jens
Schweikhardt</a> won 3 times
… AGAIN! He is the only person who was able to do this, let alone do it in
two contests in a row. <a href="../authors.html#Bas_de_Bakker">Bas de
Bakker</a> and <a href="../authors.html#J_David_Lowe">David
Lowe</a> won twice this year as
well.</p>
<p>As we stated in the <a href="guidelines.txt">guidelines</a>, the authors of the winning entries are
as much news to us as they are to you because we keep authorship separate from
rest of the entry. Some people have it, we guess!</p>
<p>There were a few very good entries that might have won if it were not
for the fact that they didn’t work. If you didn’t win, but think you
had a chance: test your program, fix it and submit it next year!</p>
<p>This year we awarded some outstanding entries. We recommend that you
look at all of the winning entries. The list of winning entries is a bit too long to
say something about every entry. On the other hand a partial mention
of a few is in order:</p>
<ul>
<li>Audiences were very impressed with the <a href="banks/index.html">Best of Show
entry</a>.</li>
<li>The judges were amused that for the first time we received an entry
that caused gcc to give the assembler bad input in some cases.</li>
<li>The <code>poot</code> entries (<a href="dlowe/index.html">dlowe</a>,
<a href="dloweneil/index.html">dloweneil</a> got a good laugh from the <a href="../faq.html#ioccc_bof">USENIX IOCCC BOF
&amp;lparen;Birds Of a Feather&amp;rparen;</a> crowd.</li>
<li>Those with Functional Programming knowledge as well as those
impressed with CPP code expansion like <a href="fanf/index.html">the entry that translates
lambda expressions into combinator expressions</a>.</li>
<li>Logic minded folks will get somewhat twisted up while following the
flow of the <a href="schnitzi/index.html">Best Flow Control entry</a>.</li>
<li>Those who know the PostScript language will be ‘bemused’ by
the <a href="bas1/index.html">Best Encapsulation entry</a>.</li>
</ul>
<p>There were some outstanding entries that did not win. Unfortunately
some very good entries lost because they:</p>
<ul>
<li>depended too much on non-portable side effects in expressions;</li>
<li>depended too much on a particular byte order;</li>
<li>required the use of a special script, data file or pseudo-machine language
that was not supplied with the entry.</li>
</ul>
<p>We hope the authors of some of those entries will fix and re-submit
them for the next IOCCC.</p>
<h2 id="there-was-no-1997-contest">There was no 1997 contest</h2>
<p>So what happened to 1997? There was no summer USENIX Technical
Conference. The Technical Conference was held Jun 15-19, 1998 instead
… 18 months later than the 1996 summer USENIX Technical Conference.
In addition we had to select some new IOCCC judges. As a result the IOCCC
skipped over 1997.</p>
<h2 id="final-comments">Final Comments</h2>
<p>Please send us comments and suggestions what we have expressed above.
Also include anything else that you would like to see in future contests.
Send such email to:</p>
<pre><code> questions@ioccc.org</code></pre>
<p><strong>IMPORTANT NOTE</strong>: The email addresses found above are for historical
purposes only, and should not be used today. See
<a href="../contact.html">contact.html</a> for up to date contact details
as well as details on how to provide fixes to any of the entries.
See also the <a href="../faq.html">IOCCC FAQ</a> for additional information on the IOCCC.</p>
<p>If you use, distribute or publish these entries in some way, please drop
us a line. We enjoy seeing who, where and how the contest is used.</p>
<p>You must include the words ‘ioccc question’ in the subject of your email
message when sending email to the judges.</p>
<p>The next IOCCC is planned to start towards the end of 1999. Watch
<a href="https://www.ioccc.org">www.ioccc.org</a> for news of the next contest.</p>
<!--
Copyright © 1984-2024 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/
-->
<!-- AFTER: last line of markdown file: 1998/README.md -->
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- START: this line starts content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
<!-- START: this line starts content generated by: bin/output-year-index.sh -->
<div id="inventory">
<div id="1998">
<h1 id="winning-entries-of-1998---the-14th-ioccc">Winning Entries of 1998 - The 14th IOCCC</h1>
</div>
</div>
<p><a href="1998.tar.bz2"><strong>Download all winning entries from 1998</strong></a></p>
<ul>
<li><a href="banks/index.html"><strong>1998/banks</strong></a> - <strong>Best of Show</strong></li>
<li><a href="bas1/index.html"><strong>1998/bas1</strong></a> - <strong>Best encapsulation</strong></li>
<li><a href="bas2/index.html"><strong>1998/bas2</strong></a> - <strong>Best small program</strong></li>
<li><a href="chaos/index.html"><strong>1998/chaos</strong></a> - <strong>Best object orientation</strong></li>
<li><a href="df/index.html"><strong>1998/df</strong></a> - <strong>Best data hiding</strong></li>
<li><a href="dlowe/index.html"><strong>1998/dlowe</strong></a> - <strong>Best utility</strong></li>
<li><a href="dloweneil/index.html"><strong>1998/dloweneil</strong></a> - <strong>Most fun</strong></li>
<li><a href="dorssel/index.html"><strong>1998/dorssel</strong></a> - <strong>Obsolescent feature</strong></li>
<li><a href="fanf/index.html"><strong>1998/fanf</strong></a> - <strong>Most obfuscated translator</strong></li>
<li><a href="schnitzi/index.html"><strong>1998/schnitzi</strong></a> - <strong>Best flow control</strong></li>
<li><a href="schweikh1/index.html"><strong>1998/schweikh1</strong></a> - <strong>CPP abuse</strong></li>
<li><a href="schweikh2/index.html"><strong>1998/schweikh2</strong></a> - <strong>Most erratic behavior</strong></li>
<li><a href="schweikh3/index.html"><strong>1998/schweikh3</strong></a> - <strong>Most space efficient</strong></li>
<li><a href="tomtorfs/index.html"><strong>1998/tomtorfs</strong></a> - <strong>Best self-documenting</strong></li>
</ul>
<hr style="width:10%;text-align:left;margin-left:0">
<h4>
Jump to: <a href="#">top</a>
</h4>
<!-- END: next line ends content generated by: bin/output-year-index.sh -->
<!-- END: this line ends content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
<!-- START: this line starts content from: inc/after-content.default.html -->
</div>
<!-- END: this line ends content from: inc/after-content.default.html -->
<!-- START: this line starts content from: inc/footer.inventory.html -->
<!--
Copyright © 1984-2024 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/
-->
<div class="footer">
<div id="copyright"><h3>Copyright &copy; 1984-2024 by Landon Curt Noll:
<a href="https://creativecommons.org/faq/#what-does-some-rights-reserved-mean"
target="_blank"
rel="license noopener noreferrer">Some Rights Reserved</a></h3>
<p>
This work is <b>licensed by Landon Curt Noll</b> under
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1"
target="_blank"
rel="license noopener noreferrer"
style="display:inline-block;">CC BY-SA 4.0</a></b>.
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/cc.png"
alt="cc inside circle symbol">
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/by.png"
alt="person inside circle symbol">
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/sa.png"
alt="arrow looping back on itself inside circle symbol"><br>
You should <b>carefully review</b> the
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/legalcode.en"
target="_blank"
rel="license noopener noreferrer">CC BY-SA 4.0 LEGAL CODE</a></b>
before using the licensed material.<br>
You may wish to review the
<b><a href="../license.html"
target="_blank"
rel="license noopener noreferrer">highlights of some of the key features and terms</a></b>
of <b>CC BY-SA 4.0</b>.<br>
</p>
</div>
<div id="coda"><h3>Coda</h3>
<p>
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F1998%2Findex.html" rel="nofollow">Nu HTML check this web page</a><br>
<a href="#top">Jump to top</a> <a href="#content">Jump to Content</a> <a href="#inventory">Jump to Inventory</a><br>
</p>
</div>
</div>
<!-- END: this line ends content from: inc/footer.inventory.html -->
<!-- START: this line starts content from: inc/bottom.default.html -->
</body>
</html>
<!-- END: this line ends content from: inc/bottom.default.html -->