home *** CD-ROM | disk | FTP | other *** search
/ ftp.cse.unsw.edu.au / 2014.06.ftp.cse.unsw.edu.au.tar / ftp.cse.unsw.edu.au / pub / doc / languages / C / ioccc / 1990 / scjones.hint < prev    next >
Encoding:
Text File  |  1992-10-18  |  2.4 KB  |  60 lines

  1. ANSI Committee's Worst Abuse of C: <scjones@sdrc.uu.net> Larry Jones
  2.  
  3.     Larry Jones
  4.     SDRC
  5.     2000 Eastman Dr
  6.     Milford, OH 45150  
  7.     USA
  8.  
  9.  
  10. Judges' comments:
  11.  
  12.     The addition of trigraphs has made it easier to make programs 
  13.     hard to read.  It was a dark and stormy night for C when the
  14.     ANSI C committee added trigraphs to the standard.  Too bad
  15.     that they didn't just simply require a more reasonable ISO
  16.     character set.
  17.  
  18.     The common.mk (non-ANSI) makefile uses sed to form scjones.alt.c.
  19.     The scjones.alt.c is similar to the original scjones.c source,
  20.     but with all the trigraphs converted.  You might want to try:
  21.  
  22.         make -f common.mk scjones.alt.c
  23.  
  24.     even if you only have an ANSI compiler, just to see how
  25.     the trigrapsh are converted.
  26.  
  27. WARNING: In the future, we will be passing ANSI programs through a
  28.      trigraph filter before reading.  Trigraph-ifacation will
  29.      not be a major consideration in future contests.  People 
  30.      should exploit more interesting features of ANSI C.
  31.  
  32.  
  33. Selected notes from the author:
  34.  
  35.     Since this year's contest is dedicated to ANSI C, here is a
  36.     strictly conforming entry.  In accordance with the ANSI
  37.     definition of a strictly conforming program it does not produce
  38.     output dependent on any unspecified, undefined, or implementation
  39.     defined behavior, and it does not exceed any of the minimum
  40.     implementation limits.  It adheres to all of the syntactic and
  41.     semantic constraints of the standard, #includes the relevant
  42.     headers for the functions it uses, and uses the EXIT_SUCCESS and
  43.     EXIT_FAILURE macros to return a correct success/fail status to
  44.     the invoking program.  It also uses trigraphs for characters
  45.     which are not in the Invariant Code Set of ISO 646:1983, so it
  46.     will be portable to machines with deficient (from C's standpoint)
  47.     character sets.  In short, it should be very widely portable.  As
  48.     an extra added attraction, all of the lines are under 72
  49.     characters long, which would allow for sequence numbers to be
  50.     punched in columns 73-80 :-).
  51.  
  52.     [[ The Author sent us this note after he was informed that he won ]]
  53.  
  54.     Although I am quite grateful for the "ANSI Committee's Worst Abuse
  55.     of C" title (were you aware that I am a member of the committee or
  56.     is the double meaning unintentional?), I was really hoping for
  57.     something more along the lines of "Closest Resemblance to Line Noise."  :-)
  58.  
  59.     [[ ... it was unintentional ]]
  60.