--- /dev/null
+ NEW IN THIS RELEASE
+
+ Release 0.16 (by Brian Raiter and Eric S. Raymond) 26 May 1997
+
+This is the 25th-anniversary release of INTERCAL. This language, conceived
+in irony a quarter century ago today, has outlasted many more serious and
+high-minded essays in computer language design. This fact should give us
+pause to reflect, or possibly frighten the crap out of us. Or both.
+
+1. Corrected manual bugs.
+
+2. Fixed over-enthusiastic install production in the Makefile.
+
+3. DO PLEASE is no longer accepted (Brian Raiter pointed out that the
+ manual does not sanction it).
+
+4. Fixed various bugs in the optimizer.
+
+5. Incorporated fixes made by William Walter Patterson for bugs that
+ appeared when multiple files are given on the command line.
+
+(The following changes are due to Brian Raiter)
+
+6. The system library is now available for TriINTERCAL (all bases, 3 to 7).
+ The compiler has been updated to use the right library automagically.
+
+7. The error 774 feature has been brought into conformance with the
+ Princeton compiler. The odds are now a flat 10% (but still 0% with -b).
+
+8. The compiler has been modified to allocate memory dynamically, and
+ the hard-coded limits on program size and number of variables has
+ been removed. Programs are now only limited by the amount of
+ available memory.
+
+9. Array output now fflushes after outputting newlines.
+
+10. Two minor bug fixes: one in wimpmode input, which was clamping
+ input to the signed integer range, and one in politesse checking.
+ The latter was causing programs to be recognized as impolite only
+ if their ratio was less that one-sixth, not one-fifth. (Fixing this
+ also necessitated adding a few PLEASEs to pit/rot13.i.)
+
+11. Several new programs have been tossed into the pit.
+
+ Release 0.15 (by Eric S. Raymond) 20 Jun 1996
+
+1. Switched the INTERCAL manual master to mgm in order to be able to handle
+ section crossreferences properly. The manual has now been carefully
+ proofread against the paper version by ESR and seems to match. It's
+ also been independently proofread for typos by Brian Raiter.
+
+2. The optimizer now does complete analysis and evaluation of constant
+ expressions at compile time.
+
+3. Added optimization templates for ~, |, &, ^ expressions. Also added
+ |, &, ^ idioms to the system library, and documented them.
+
+(The following changes are due to Brian Raiter)
+
+4. Every one of the INTERCAL-72 messages is now emitted when appropriate.
+ including the previously un-emitted E000, E197, and E200 (and see below).
+
+5. A close reading (while proofing) of the sections of the manual on
+ error messages seems to indicate that splatted lines were only
+ splatted in the default listing printed after a successful
+ compile. (This seems to be a standard feature of IBM compilers; I
+ remember that RPG did this as well.) My understanding of the manual is
+ when the syntactically offensive line is encountered at runtime, it is
+ printed as error E000. I have modified the code to do this.
+
+6. I have fixed INTERCAL in order to add another bug. Namely, I have
+ implemented the BUG/NOBUG option in the Princeton compiler. By
+ default, there is a chance that INTERCAL will randomly insert error
+ E774 into your executable. (The odds are 1/128 per statement, not
+ counting COME FROMs. Is there any way to find out what the
+ Princeton compiler's odds were?) The new option -b turns this
+ feature off.
+
+7. The new file pit/lib/numio.i contains routines for wimpmode I/O.
+ These routines are documented in the file pit/lib/numio.doc.
+ It is my earnest hope that C-INTERCAL programmers everywhere will
+ flock to these handy routines, and C-INTERCAL users will thus no
+ longer need to fear that they might succumb to the foul and awful
+ temptation to use the dastardly +wimpmode option.
+
+ Release 0.14 (by Eric S. Raymond) 9 Jun 1996
+
+1. The documentation has been reorganized and cleaned up (you can now
+ format either a C-INTERCAL or INTERCAL-72 manual from the same master).
+ The diagrams in the paper original have been transcribed as pic figures.
+ See doc/READ.ME for details.
+
+2. Yet more code. The pit now includes a second random-number generator,
+ a ROT13 filter, and even two programs in TriINTERCAL!
+
+3. Louis Howell's corrected system library is now included.
+
+4. The distribution is now formally GPLed.
+
+ Release 0.13 (by Eric S. Raymond) 5 Jun 1996
+
+1. I folded in patches by Brian Raiter <breadbox@muppetlabs.com> that port
+ this code to Linux, ANSIfies it, and enables it to use flex. Note: This
+ version has been tested on Linux and SunOS but not yet elsewhere.
+
+2. Another piece of nontrivial INTERCAL code has been found! (Doubtless
+ hell is freezing over even as I write.) We've added to the pit the
+ `beer' program by Matt DiMeo <mdimeo@brooktree.com>, courtesy of the
+ infamous Beer List (URL:http://www.ionet.net/~timtroyr/funhouse/beer.html).
+
+ Release 0.12 (by Eric S. Raymond) 22 Mar 1995
+
+1. The code now compiles and runs under Linux, using bison and lex. It does
+ *not* yet work with flex; C.P. Osborne's patches for 0.11 turned out not
+ to be sufficient (at least for flex 2.4.6 under Linux using the -l option).
+ See the BUGS list.
+
+2. Note 3 under 0.11 was incorrect. We're in conformance after all.
+
+3. The politesse check is a little smarter about programs too small to
+ conform to the 1/5-to-1/3 criterion. All the pit programs have been
+ checked for conformance. Also, the politesse error message now tells
+ you the offending program's line count.
+
+ Release 0.11 (by Eric S. Raymond) 24 Sep 1994
+
+1. Incorporated changes by Jan-Pieter Cornet <cornet@OTech.fgg.EUR.nl> for
+ magical inclusion of the system library. These address an outstanding bug
+
+ 2. (SS) The `system library' should be precompiled and `linked' to user
+ written code, at least optionally. Doing this with the current compiler
+ presents a few problems.
+
+ which has accordingly been removed from the BUGS file. They also fix a
+ previously unknown bug; due to a minor oversight in the lexer, it was not
+ possible to ABSTAIN FROM WRITING IN or READING OUT. Jan also contributed
+ a test program that demonstrates gerund abstention.
+
+2. Despite the obvious appeal of the idea, and much discussion on
+ alt.lang.intercal, I decided *not* to add Klingon; maintaining two parallel
+ grammars just so the compiler could support SVO and OSV languages would be
+ too painful. There was also a minor mess near case-sensitivity in the
+ digits. The workaround kluges I was offered instead failed to satisfy.
+
+3. We fess up to a violation of the INTERCAL-72 standard. That implementation,
+ instead of accepting an entire multiple-digit number per line of input,
+ expected one digit per *card image* (input line). It is unclear how
+ INTERCAL-72 programs ever managed to input more than one number.
+
+4. Added patches by C.P.Osborne <boris@ibmpcug.co.uk> to make the lexer work
+ using flex, for Linux and BSD/386 support. I didn't use his error-reporting
+ patch, though; instead, I changed the parser to catch errors at logical-line
+ level. I also kept the N in `RESUBNIT'; this is a carefully preserved
+ feature of INTERCAL-72.
+
+5. Volapuk digits are now recognized on input. TO DO: Recognize Volapuk
+ keywords, including gerunds.
+
+ Release 0.10 (by Eric S. Raymond) 9 Sep 1994
+
+1. It is now possible to undo a line-number abstention with a gerund
+ reinstatement, or undo a gerund abstention with a line-number
+ reinstatement. In previous versions, gerund abstention/reinstatements and
+ line-number abstention/reinstatements were independent of each other.
+
+2. After release 0.5, I wrote in the TO DO list as follows:
+
+ 2. (ESR) Input format internationalization -- allow WRITE IN input digits in
+ major languages such as Nahuatl, Tagalog, Sanskrit, and Basque.
+
+ The twisted loons in the alt.folklore.computers crowd loved this idea,
+ and I actually got sent digit lists for Nahuatl, Tagalog, Sanskrit, and
+ Basque -- also, Kwakiutl, Georgian, Ojibwe, and Albanian. I've left
+ out Albanian (didn't want to keep track of the dipthong diacritical)
+ and Ojibwe (no zero digit). So: Nahuatl, Tagalog, Sanskrit, Basque,
+ Georgian, and Kwakiutl are now supported in addition to English.
+
+3. The THEORY document has been significantly revised.
+
+ Release 0.9 (by Eric S. Raymond) 5 Mar 1993
+
+1. An embarrassing port bug in the INTERCAL skeleton has been fixed
+
+2. Jamie Zawinski's suggestion for an improved E333 error message has
+ been accepted.
+
+3. Added and improved documentation for pit programs.
+
+4. The install production in the Makefile now puts lose.h in place
+ as well as cesspool.h.
+
+5. You can now set the C compiler to be used as a back end by INTERCAL
+ by setting the environment variable CC. The default is cc.
+
+ Release 0.8 (many hacks on 0.7 by Eric Raymond) 21 Jan 1992
+
+1. A previously undocumented `feature' of the Princeton compiler,
+ revealed by Don Woods, is now emulated. If fewer than 1/5 or more
+ than 1/3 of a program's statements contain the qualifier `PLEASE', the
+ program is rejected with an entertaining error message. Programs in pit
+ have been hacked to pass the politesse test.
+
+2. The `sample' program now works correctly, thanks to Louis Howell. Also,
+ he has contributed new programs to calculate pi and to search for prime
+ numbers.
+
+3. An intercal mode for GNU Emacs is included. It helps programmers deal with
+ the new politesse check by randomly expanding the abbrev "do" to DO PLEASE
+ or PLEASE DO about 1/4 of the time.
+
+4. Improvements in code generation for NEXT/RESUME.
+
+5. Fixes to the optimizer; it handles the results of optimized MINGLEs
+ correctly now. Also, added a rewrite rule that checks for the
+ equality-test idiom using XOR.
+
+6. The original error messages from the Princeton compiler have been restored.
+
+The documentation has been updated to reflect these changes.
+
+ Release 0.7 (by Louis Howell) 21 Dec 1991
+
+In addition to bug fixes, new features in this version include arrays,
+character I/O, modified (hopefully improved!) semantics for the COME
+FROM statement, extensions to bases other than 2, new INTERCAL programs,
+and new documentation.
+
+ Release 0.6 (by Steve Swales) 5 Jan 1991
+
+1. Restored Princeton documentation (courtesy of Michael Ernst).
+
+2. Added -@ usage option to ick.
+
+3. Added [+/-]help, [+/-]traditional, and [+/-]wimpmode options for
+generated programs; [+/-]traditional is a no-op at this point.
+
+4. Various bug fixes, esp. in lexical analysis.
+
+ Release 0.5 (ESR's original pre-release) 5 Jun 1990
+
+1. As a convenience to all you junior birdmen out there, `NINER' is accepted as
+ a synonym for `NINE' in INTERCAL input.
+
+2. The COME FROM statement is now compiled.
+
+ -------------
+
+The resurrection of INTERCAL from its grave took place on 12 May 90
+when ESR released 0.3 on an unsuspecting USENET.
+