C Environment -- Responses
Wade Guthrie
evil at arcturus.UUCP
Tue Aug 22 06:42:33 AEST 1989
Thanks to the following people (at least) for responding:
orion.mc.duke.edu!bet (Bennett Todd)
ssbell!grego (Greg Ostravich)
auspex!guy (Guy Harris)
cs.utah.edu!jacobs%cmos (Steven R. Jacobs)
sneaky!gordon (Gordon Burditt)
ames!uwvax!astroatc!nicmad!madnix.ARPA!jason
Originally, I asked for the ideal C environment. The idea (which was
not stated) was that I want to add all of the missing elements to any
systems on which I will program in C and to learn to use the things that
I don't already understand. I post (an abridged version of) the responses
here for those who would like to do the same.
Originally, I started with:
- make
- a symbolic debugger
- error (on UNIX -- inserts comments which are error msgs.)
- a C interpereter (which can call compiled sub-modules)
- a C compiler (of-course)
- vi
- curses (no flames, please)
A common comment was: Exchange "vi" with your favorite editor (most
votes seems to go to EMACS.
Next, many wanted me to delete:
- interperetor (Okay, but only with the proper debuggers)
- curses (No, I think this is essential for portable screen handlers)
- error
One person gave compiler requirements:
- C pre-processor output must be available
- Assembler must be examinable (I'm not big on this one)
- ANSI compatible (A MUST)
- good optimization
And people wanted to add (In the I-knew-this-but-forgot-to-mention-it
category):
- a windowing system
- a really good programmable shell
- "AWK, sed, ..."
- "TAGS, grep, ...":
- a good profiler
- "lint". *Definitely* "lint".
- A code beautifier would be good.
(In the I-didn't-think-of-it-but-really-neat category):
- "SCCS, RCS, ...": a source code control system
- "ar, ...": a library manager that can create libraries
and extract objects from them. This is not obviously
included in the C compiler.
- an assembler, which is not obviously included in the C compiler.
- "yacc, bison, ...": a parser generator
- "lex or flex, ...": lexical analyzer generator
- "ctags, ...": a code browsing mechanism; and an editor
that can handle tag files as a minimum.
- Something like the SunOS "make" scheme for having the
compilers generate dependency lists (include files, libraries,
etc.) automatically, so that I don't have to worry about
manually constructing dependency lists.
(In the hmmm-looks-interesting category):
- "nm, ...": a program that can list the symbols in an object
file (This is useful as the basis for lots of things like
cflow, and inspecting your C library for conflicts with
things you wrote.)
- If your system uses a fixed-size stack, a utility to estimate
stack use for non-recursive programs.
- "diff,...": compare differences between source versions
- A cross-referencer (multi-file). Bi-directional as well.
I just thought that some people would be interested in what other people
are using to generate code -- might make things easier.
Wade Guthrie
evil at arcturus.UUCP
Rockwell International
Anaheim, CA
(Rockwell doesn't necessarily believe / stand by what I'm saying; how could
they when *I* don't even know what I'm talking about???)
More information about the Comp.lang.c
mailing list