Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 (MC840302); site mcvax.UUCP Path: utzoo!linus!decvax!mcvax!guido From: guido@mcvax.UUCP (Guido van Rossum) Newsgroups: net.lang.c Subject: Re: 6 character external identifiers Message-ID: <5891@mcvax.UUCP> Date: Thu, 12-Jul-84 08:27:53 EDT Article-I.D.: mcvax.5891 Posted: Thu Jul 12 08:27:53 1984 Date-Received: Sat, 14-Jul-84 02:02:16 EDT References: <74@datagen.UUCP> <598@sdcsla.UUCP> <7804@umcp-cs.UUCP> Reply-To: guido@mcvax.UUCP (Guido van Rossum) Organization: "Stamp Out BASIC" Committee, CWI, Amsterdam Lines: 21 There is a rather elegant way to replace long external identifiers by shorter ones: use the C preprocessor. It should be easy to write a program which generates a set of lines to a file "rename.h" like: #define ThisIsAVeryLongName _1ThisIsAVeryLongName #define ThisIsAnother _2ThisIsAnother etc. The advantage is clear: no need to read a program full of cryptical short names. You may also choose your own abbreviations, if this help interpreting debugger or loader diagnostics. It especially works well with the ANSI standard because the preprocessor has to distinguish such long names. Also, it is easy to add this later to any existing program. [This idea was used by James Gosling to get Emacs on a PDP. He even modified the preprocessor to *automatically* #include a file "map.h" in front of every file processed. I wonder if he succeeded, given the size of the code :-)] -- Guido van Rossum, "Stamp Out BASIC" Committee, CWI, Amsterdam guido @ mcvax