[comp.sys.mac] MPW system

paul@aucs.UUCP (09/09/87)

Which is better: the MPW development system from APDA or Lighspeed Pascal
and C from THINK.  I know MPW comes with 6 inches of documentation, but
is there anything in it that isn't in Inside Mac.  Comments please.


Paul H. Steele      UUCP:      {uunet|watmath|utai|garfield}!dalcs!aucs!Paul
Acadia University   BITNET:    Paul@Acadia
Wolfville, NS
CANADA  B0P 1X0     PHONEnet:  (902) 542-2201x587

stew@endor.harvard.edu (Stew Rubenstein) (09/10/87)

In article <429@aucs.UUCP> paul@aucs.UUCP (Paul Steele) writes:
>Which is better: the MPW development system from APDA or Lighspeed Pascal
>and C from THINK.  I know MPW comes with 6 inches of documentation, but
>is there anything in it that isn't in Inside Mac.  Comments please.

There's nothing in the documentation for MPW that you need for
developing programs with Ligtspeed that you can't get elsewhere.
As to which is better, it depends.  Lightspeed has a much faster
compile-link cycle, but MPW has a grillion features that are quite
useful to the professional programmer or group of programmers.
Which you need depends on what you intend to do with it.

Stew Rubenstein
Cambridge Scientific Computing, Inc.
UUCPnet:    seismo!harvard!rubenstein            CompuServe: 76525,421
Internet:   rubenstein@harvard.harvard.edu       MCIMail:    CSC

jww@sdcsvax.UCSD.EDU (Joel West) (09/10/87)

I hate to be a moral relativist, but 'better' is not the right
question, since each has its advantages.

It's generally agreed that the Lightspeed (and Turbo) products
are cheaper, require smaller computers (MPW is hard disk only
and is straining things at 1 Mb) and faster.

MPW is considered the software of choice for large projects.
Some people would consider 5,000 lines large; others, 50,000.
Ex-UNIX types might also enjoy it because of its line-oriented
shell.  It ain't cheap, though.

[Disclaimer: I am the author of a book on MPW which, according
to the publisher, should hit the stands some time in the next
5 years. :-) :-( ]
-- 
	Joel West  (c/o UCSD)
	Palomar Software, Inc., P.O. Box 2635, Vista, CA  92083
	{ucbvax,ihnp4}!sdcsvax!jww 	jww@sdcsvax.ucsd.edu
   or	ihnp4!crash!palomar!joel	joel@palomar.cts.com

drc@dbase.UUCP (Dennis Cohen) (09/11/87)

In article <429@aucs.UUCP>, paul@aucs.UUCP (Paul Steele) writes:
> Which is better: the MPW development system from APDA or Lighspeed Pascal
> and C from THINK.  I know MPW comes with 6 inches of documentation, but
> is there anything in it that isn't in Inside Mac.  Comments please.

You can't necessarily say which is "better" unless you define your parameters
of operation.  If you're doing hobbyist programming, LightSpeed is probably a
big winner; however, if you're developing a large, complex product (such as our
database) then MPW takes it hands down.  Anything in between is probably a
tossup.  MPW is almost a unix shell, you have all the utilities, scripts, etc
with a superb editor and very good compilers; however, it is much slower in
the compile and link stage than smaller systems.  It won't run on less than
a hard-disk equipped Plus (ok, it'll crawl on less) and prefers more memory if
you have it.

I have both (as well as Turbo Pascal, TML Pascal, Mac C, and Aztec C), but I do
this sort of thing for a living and find them all to be good for different
projects.

Dennis Cohen
Ashton-Tate Glendale Development Center
dBASE Mac Development Team
--------------------------
Disclaimer: All opinions expressed above are my own.  I don't know what opinions
(if any) my employlie,r, agume1.B

larryha@tekig4.TEK.COM (Larry Hattery) (09/11/87)

In article <429@aucs.UUCP> paul@aucs.UUCP (Paul Steele) writes:
>Which is better: the MPW development system from APDA or Lighspeed Pascal
>and C from THINK.  I know MPW comes with 6 inches of documentation, but
>is there anything in it that isn't in Inside Mac.  Comments please.

I've used both MPW C and Lightspeed C.  They are both very good products and
worth the price you pay, but they are very different in their approach.
MPW is a shell based development system much like UNIX, while Lightspeed C
is a programing environment.

Lightspeed C is by far the easiest use and quickist learn.  The metaphor is
that your code is a project and LSC manages that project for you once you
tell it which sources files are included.  This takes all the overhead of
maintaining make files away and always insures that your project is up to
date with all the include files.  Another very nice feature is LSC's
integrated editor.  Like MPW, when the compiler finds an error, it
automatically opens the offending file and places the cursor on the line
where the error was detected.  But unlike MPW, LSC also knows where your
variables and functions are defined, so you can click on an identifier name
and the file in which it is declared is opened and the cursor is placed
on the first occurance (this is not always the actual definition).  LSC
also knows about all your nested include files and they can be listed and
opened with a click of the mouse.  These features combined with a very fast
compiler make code development an enjoyable task.  The drawback to this
environment is that there is no good way to access other useful programming
tools without exiting LSC.  It's also more difficult to port code to and
from LSC to a shell environment.  The main problem here is handling the
Makefile and things that are done in it.  LSC's make only compiles code
and links in a single resource file.  Generic Makefiles can perform a
number of other tasks that may be related to the project.

MPW is quite easy to learn if you're already familiar with a UNIX type
shell.  It comes with many of the common programming tools like make,
diff, and grep, and packages them into a nice window based shell.  You
can alter the menus and access your own tools and shell scripts.  This
provides a very powerful environment for code development.  Another nice
thing about MPW is that the interface remains the same whether you're
programming in C, Pascal, or assembly and all are available.  By the way,
MPW's Pascal is object oriented and Apple is comming out with and an
object oriented version of C soon which should make programming the Mac
much nicer, especially if you get MacApp.  With MPW's power and a bit
of work, I believe it's possible to create some utilities that will
provide a user interface much like LSC, but LSC cannot be made to do
all the things MPW will do.  I have not looked at the code generated
by MPW but I've heard it's pretty good and it seems to run as fast as
LSC's for those things I've used.  However, the compile, link, run loop
is much longer in MPW than in LSC.

All in all, I think both these systems are useful and have their place in
every programmer's tool box.  For most stand alone Mac applications I'd
use LSC because of its quick turn around and ease of use.  For larger,
more complex applications and systems which might be ported to and from
other systems I'd use MPW C.  Both systems lack good symbolic debugger
support as do all Mac C compiler's I've seen.  A debugger like Sun's
dbxtool would be extremely helpful!

These are my opinions, your's may differ, so sue me.

Larry Hattery

maiden@sdcsvax.UCSD.EDU (VLSI Layout Project) (09/12/87)

In article <429@aucs.UUCP>, paul@aucs.UUCP (Paul Steele) writes:
> Which is better: the MPW development system from APDA or Lighspeed Pascal
> and C from THINK.  I know MPW comes with 6 inches of documentation, but
> is there anything in it that isn't in Inside Mac.  Comments please.

I have used the Lightspeed C product for a 35,000 line project and Pascal
for a 15,000 line one.  No complaints except that Think should put in
some sort of revision control.  I have also used MPW Pascal, C, and alone,
but not for anything over 10,000 lines yet.

I have attempted group projects in Lightspeed C twice with astonishingly
poor results (astonishing in comparison to what a single user can do).
MPW shines in well-planned group projects (where good docs are a must).
However, MPW is *SLOW* and produces *MEDIOCRE* code.  MPW needs another
optimizer.

What it boils down to:
   Lightspeed C is optmized for single user programmers
      - fast turn-around
      - easy-to-use and friendly
      - some features replace good code documentation (global lookup, etc.)
   MPW is optimal for group projects and long-term control
      - shell scripting
      - potential revision management
      - useful utilities for source code control
      - good control for group coding

 Edward K. Y. Jung
 ------------------------------------------------------------------------
 UUCP: {seismo|decwrl}!sdcsvax!maiden     ARPA: maiden@sdcsvax.ucsd.edu

rick@uwmacc.UUCP (the absurdist) (09/23/87)

[ which bug is better?  New Bug or Classic bug?]

I have a project which started in Turbo Pascal;  by the time MPW
arrived I was quite satisfied with Turbo as a compiler and didn't
care to switch.  (As an aside:  Turbo runs just fine on my old
512 UN ENHANCED that I have at home;  one 400K disk for compiler/editor
and system; another for source/object.... name another reasonable 
system that still does that!  Great for trying out late night ideas
right when you have them, if you don't want to buy this year's model
every other year...)
	However, I have MPW on the machine I use here at work;  and I find
it quite handy as a general text processing/utility shell.  For example:
source listing and cross referencing;  pretty printing;  automatic
conversion between compiler variations via shell scripts;  and file
diddling (like running SETFILE on all files on a floppy that's just
been handed to me for disk repairs).   MPW is quite useful without
ever using the compilers.  At APDA prices, it is still a reasonable
choice for a grab bag of utilities.
-- 
Rick Keir -- one floor up from the Oyster Tank -- UWisc - Madison
{allegra, ihnp4, seismo}!uwvax!uwmacc!rick
Wisconsin:  Live Free Or Die -- or Eat Cheese