[comp.sys.mac.programmer] MacApp pascal compiler

frederia@isy.liu.se (Frederic Aron) (02/02/90)

We are developping a software into MacApp (brand new experience ffor us) and
the compiler seems to be rather slow. Would there be a trick (include files,
segmentation or ...) to increase the speed by avoiding to compile the parts
of the program that have not been modified?
Thanks for any answer or proposition.'

from Frederic Aron
University of Linkoping,Sweden.
frederia@isy.liu.se

marc@Apple.COM (Mark Dawson) (02/06/90)

In article <1990Feb2.154008.17297@isy.liu.se> frederia@isy.liu.se (Frederic Aron) writes:
>
>We are developping a software into MacApp (brand new experience ffor us) and
>the compiler seems to be rather slow. Would there be a trick (include files,
>segmentation or ...) to increase the speed by avoiding to compile the parts
>of the program that have not been modified?
>Thanks for any answer or proposition.'
>
There are a couple of ways to speed up a MacApp compile (using Pascal or C++):
(1) Hardware:
    a) Get more RAM (with C++ and Multifinder you practically are required to
       use 8mb)
    b) Get a faster processor (Mac IIci).

(2) Programing:
    a) Put each method in its own file.  This will mean that you may have many
      files (I have about 20 source files).  This will speed up your compiles
      (I don't know of any way to speed up your links).

    b) Try to include as few headers as possible--the more you include the
       slower the compile (really check and make sure that you need to include
       all of the default Mac header files).

Those are my speedup tips (one that costs $$ and one that costs a change in
programming style.

--Mark

louis@asterix.drev.dnd.ca (Louis Demers) (02/07/90)

marc@Apple.COM (Mark Dawson) writes:
>(2) Programing:
>    a) Put each method in its own file.  This will mean that you may have many
>      files (I have about 20 source files).  This will speed up your compiles
>      (I don't know of any way to speed up your links).
                                   ^^^^^^^^^^^^^^^^^^^

    I am waiting for my upgrade to MacNosy/TheDebugger which
    includes an incremental linker which is supposed
    to speed up links.  I called Jasik Design and the
    advertised requirements of 4 Mb. is more like 8 Mb
    if you plan to use MacApp/C++.

    I'll keep you posted once I receive it and if there is
    enough interest.

	Bye,

		Louis

-- 
| Louis Demers              | DREV, Defence Research Establishment,Valcartier |
| louis@asterix.drev.dnd.ca | POBox 8800, Courcelette,Quebec, CANADA, G0A 1R0 |
|            (131.132.48.2) | Office: (418) 844-4424       fax (418) 844-4511 |
+---------------------------+-------------------------------------------------+

peirce@claris.com (Michael Peirce) (02/07/90)

In article <1990Feb6.204151.26764@asterix.drev.dnd.ca> louis@asterix.drev.dnd.ca (Louis Demers) writes:
>marc@Apple.COM (Mark Dawson) writes:
>>(2) Programing:
>>    a) Put each method in its own file.  This will mean that you may have many
>>      files (I have about 20 source files).  This will speed up your compiles
>>      (I don't know of any way to speed up your links).
>                                   ^^^^^^^^^^^^^^^^^^^
>
>    I am waiting for my upgrade to MacNosy/TheDebugger which
>    includes an incremental linker which is supposed
>    to speed up links.  I called Jasik Design and the
>    advertised requirements of 4 Mb. is more like 8 Mb
>    if you plan to use MacApp/C++.

I'm currently using Jasik's Debugger and the Incremental Build System with
MacApp/Object Pascal and I'm generally happy with it.

Turn around time is short (less than 10 seconds on short programs, 40 seconds
for a humongous program I'm working on) as long as you don't change the
interface to a routine.  If you do, you have to do normal build.

It's saved me a lot of time and has been well worth the trouble to me.

 Claris Corp. | Michael R. Peirce
 -------------+--------------------------------------
              | 5201 Patrick Henry Drive MS-C4
              | Box 58168
              | Santa Clara, CA 95051-8168
              | (408) 987-7319
              | AppleLink: peirce1
              | Internet:  peirce@claris.com
              | uucp:      {ames,decwrl,apple,sun}!claris!peirce

drc@claris.com (Dennis Cohen) (02/07/90)

louis@asterix.drev.dnd.ca (Louis Demers) writes:

>marc@Apple.COM (Mark Dawson) writes:
>>(2) Programing:
>>    a) Put each method in its own file.  This will mean that you may have many
>>      files (I have about 20 source files).  This will speed up your compiles
>>      (I don't know of any way to speed up your links).
>                                   ^^^^^^^^^^^^^^^^^^^

>    I am waiting for my upgrade to MacNosy/TheDebugger which
>    includes an incremental linker which is supposed
>    to speed up links.  I called Jasik Design and the
>    advertised requirements of 4 Mb. is more like 8 Mb
>    if you plan to use MacApp/C++.

>    I'll keep you posted once I receive it and if there is
>    enough interest.

Another time that the 4Meg limit needs to be raised is if you are trying to
lib or link anything of any size with SADE symbols on/full.  One way to
speed up links slightly is to use lib whenever possible for relatively
static sections of your code.  Libraries link much faster than standard
object files since lib has already resolved many things that the linker
would otherwise spend time on.

Dennis Cohen
Claris Corp.
 ****************************************************
Disclaimer:  Any opinions expressed above are _MINE_!
 ****************************************************

anders@penguin (Anders Wallgren) (02/08/90)

In article <10859@claris.com>, peirce@claris (Michael Peirce) writes:
>I'm currently using Jasik's Debugger and the Incremental Build System with
>MacApp/Object Pascal and I'm generally happy with it.
>
>Turn around time is short (less than 10 seconds on short programs, 40 seconds
>for a humongous program I'm working on) as long as you don't change the
>interface to a routine.  If you do, you have to do normal build.
>
>It's saved me a lot of time and has been well worth the trouble to me.

What trouble?  I'd be interested to know since I'm starting to think
that I might want to use it.

anders

peirce@claris.com (Michael Peirce) (02/08/90)

In article <10759@zodiac.ADS.COM> anders@penguin (Anders Wallgren) writes:
>In article <10859@claris.com>, peirce@claris (Michael Peirce) writes:
>>
>>It's saved me a lot of time and has been well worth the trouble to me.
>
>What trouble?  I'd be interested to know since I'm starting to think
>that I might want to use it.
>

I was afraid someone would ask that :-)

Well, Jasik's debugger provides lots of power.  Low level power to rival
Macsbug or TMON and high level power to rival SADE.  But there is a price
to pay.  

It's a fairly intrusive debugger, it doesn't just sit quietly until called
on like Macsbug or TMON.  It also doesn't get along with a few inits.
It has a few bugs too (though Jasik is very responsive about fixing them
when you tell him about them).  And lastly, the UI is, well, a little strange.

A poor analogy might be to view it as a chain saw.  I wouldn't want to go
back to hand saws, but when you hit a snag, stand back!

Again, it's the best debugger out there, but it's still far from perfect.

 Claris Corp. | Michael R. Peirce
 -------------+--------------------------------------
              | 5201 Patrick Henry Drive MS-C4
              | Box 58168
              | Santa Clara, CA 95051-8168
              | (408) 987-7319
              | AppleLink: peirce1
              | Internet:  peirce@claris.com
              | uucp:      {ames,decwrl,apple,sun}!claris!peirce