[comp.sys.ibm.pc] Turbo C questions

cliff@rlgvax.UUCP (Cliff Joslyn) (07/27/87)

I've been using TurboC productively now for a few weeks, and have just
taken the opportunity to examine the interactive environment.  Perhaps I'm
missing something, but I really can't see the utility of it, especially
since the editor is single window/buffer.  Are projects any better than
makefiles (the deficiencies of Turbo's make aside)?

Can somebody reveal some advantage of tc over tcc and a good editor to me?

Thanks.



-- 
O----------------------------------------------------------------------->
| Cliff Joslyn, Computer Consoles Inc., Reston, Virgnia, but my opinions.
| UUCP: ..!seismo!rlgvax!cliff
V All the world is biscuit shaped

dmt@mtunb.ATT.COM (Dave Tutelman) (07/28/87)

In article <572@rlgvax.UUCP> cliff@rlgvax.UUCP writes:
>I've been using TurboC productively now for a few weeks, and have just
>taken the opportunity to examine the interactive environment.  Perhaps I'm
>missing something, but I really can't see the utility of it, especially
>since the editor is single window/buffer.  Are projects any better than
>makefiles (the deficiencies of Turbo's make aside)?
>
>Can somebody reveal some advantage of tc over tcc and a good editor to me?
>
   I can think of two reasons to use the interactive environment (and two
   reasons not to):
     +	The "message" window not only contains an error listing for the
	most recent make, it will bounce the cursor in the "edit" window
	to correspond to the offense highlighted in the "message" window.
	Of course, if you never get compiler errors, this won't matter
	to you  :-)
     +	The "project"-make file is much simpler to prepare than a real
	makefile.
     -	The "project"-make facility is much less capable than a real
	makefile.  If all you do is C-compile and link, then project is fine;
	if you want to do anything else (make documentation, make archive,
	MASM, etc), then you need a real make.
     -	Depending on what I'm programming, the lack of a second edit window
	can be a real bummer (e.g.- anything complex enough to require
	its own header file).

My own modus operandi is to use the integrated environment for most of
my work, but use a multi-window editor for (1)preparation of files initially,
and (2) any restructure of the program that has significant related
ramifications in more than one file.

I've also noted that:
   +	For debugging programs that receive their input interactively
	(that is, after they're called and running), the "one-keystroke
	Run" of the integrated environment is a small but worthwhile
	advantage.  (Really, the advantage is one keystroke back to
	the editor, WHERE YOU WERE BEFORE.)
   -	For debugging programs that get their input as command line
	arguments, I usually have to "escape to DOS" to do any
	worthwhile debugging.  This disadvantage cancels the ease of
	getting back to where you were in the editor.

>| Cliff Joslyn, Computer Consoles Inc., Reston, Virgnia, but my opinions.
>| UUCP: ..!seismo!rlgvax!cliff

+---------------------------------------------------------------+
|    Dave Tutelman						|
|    Physical - AT&T  -  Lincroft, NJ				|
|    Logical -  ...ihnp4!mtuxo!mtunb!dmt			|
|    Audible -  (201) 576 2442					|
+---------------------------------------------------------------+

joe@mdbs.UUCP (Joe Greer) (07/28/87)

In article <572@rlgvax.UUCP> cliff@rlgvax.UUCP (Cliff Joslyn) writes:
>I've been using TurboC productively now for a few weeks, and have just
>taken the opportunity to examine the interactive environment.  Perhaps I'm
>missing something, but I really can't see the utility of it, especially
>since the editor is single window/buffer.  Are projects any better than
>makefiles (the deficiencies of Turbo's make aside)?
>
>Can somebody reveal some advantage of tc over tcc and a good editor to me?
>

One of the biggest advantages is that you don't have to continually reload the
compiler and/or linker from disk.  This loading time doesn't seem very
significant, but if you have a project of 10+ files, the time added by this
starts to add up.  

Another nice thing about tc is the abilitiy to bring up the erroneous file
and place the cursor on the bad line with only one keystroke.  You can also
move to the next error/file or previous error with one keystroke.  I find
this extremly handy.

As for the editor, I never use it (except for one or two character changes).

When all is said and done, I would say that I preferred tc over tcc because
of the added convienence tc gives me.  Others will probably disagree, but 
since I have both, I can have my cake and eat it too.  I would not even
pretend to claim that tc is the answer to all problems, but for at least
smaller and less complicated projects I think its better than make/tcc.

					Joe Greer
					ihnp4!pur-ee!mdbs!joe

chips@usfvax2.UUCP (Chip Salzenberg) (07/30/87)

In article <572@rlgvax.UUCP>, cliff@rlgvax.UUCP writes:
> I've been using TurboC productively now for a few weeks, and have just
> taken the opportunity to examine the interactive environment.  Perhaps I'm
> missing something, but I really can't see the utility of it, especially
> since the editor is single window/buffer.
> 
> Can somebody reveal some advantage of tc over tcc and a good editor to me?
> 

TC's big advantage over TCC is this:

	The Compiler Is Always In Memory!

Using a MAKE program and TCC, the compiler is reloaded from disk once per .C
file.  Using Project Make in TC, the compiler stays in memory as it compiles
many modules.

I use TC on a VERY large program:  105 source files and 41 header files.
I compile and link all 105 modules with TC in exactly 30 minutes on a AT.
(No, they aren't tiny sources, either:  the .EXE is 367K without CodeView info.)
MS-C takes at least three times that long.

A hint:  If you have one header file which is #included by many source files in
a project, load that header into the editor before remaking the world.  TC is
smart enough to read from the editor workspace instead of the disk file, which
speeds up your compilation.
-- 
Chip Salzenberg            UUCP: "uunet!ateng!chip"  or  "chips@usfvax2.UUCP"
A.T. Engineering, Tampa    Fidonet: 137/42    CIS: 73717,366
"Use the Source, Luke!"    My opinions do not necessarily agree with anything.