Identifier significance CHALLENGE

davidson at sdcsvax.UUCP davidson at sdcsvax.UUCP
Mon Dec 5 16:55:38 AEST 1983


It has been possible for most of us to ignore the C compilers which
used only one case, and less than 7 characters for identifier
significance, simply because they only cause trouble when porting into
such an environment, and few of us have had to do that.  However, now
that Berkeley has removed the identifier length restriction,
non-Berkeley UNIX programmers are faced with the ever more frequent
onerous task of squeezing Berkeley programs into using reduced
identifier significance.  Hence this CHALLENGE:

CHALLENGE:  To write a program (for the public domain) which converts
a program designed for a given identifier significance of N1 characters,
and with C1 cases (either one or two), into an equivalent program
designed for identifier significance N2 and cases C2.  These would be
given as program arguments.

Note that when relaxing restrictions, it may be necessary to truncate
identifiers and regularize case, e.g. with N1 = 6, N2 = 100,
foobarhere, foobarthere -> foobar, foobar.  When tightening
restrictions, it may be necessary to change the identifiers, e.g.,
this_one_here, this_one_there -> this1, this2.  The latter case is more
difficult, and requires avoiding collisions with other identifiers.

I believe it very important that this program be written, and ideally by
someone with C compiler experience, although anyone is welcome to try.
We are forced to clean up someone else's mess here, as Berkeley should
never have released their compiler without providing such a compatibility
filter.

-Greg



More information about the Comp.lang.c mailing list