ehrlich@psuvax1.UUCP (Dan Ehrlich) (12/02/86)
In the latest issue of MACWORLD is an article about the "Macintosh Programmer's Workbench". I am assuming it is from Apple. Does anyone have any insights or comments on this product? Thanks in advance. --Daniel Ehrlich UUCP: {burdvax,cbosgd,cmcl2,pitt,ihnp4}!psuvax1!ehrlich CSNET: ehrlich@penn-state.csnet USPS: The Pennsylvania State University INTERNET: ehrlich@psuvax1.psu.edu Department of Computer Science BITNET: ehrlich@psuvax1.bitnet 333 Whitmore Laboratory BELL: +1 814 863 1142 University Park, PA 16802 Quote: "The sky is blue so we know where to stop mowing." Judge Harold T. Stone Disclaimer: The opinions expressed herein are my own and do not reflect the opinions, or policies, of The Pennsylvania State University or the Department of Computer Science.
tim@hoptoad.uucp (Tim Maroney) (12/05/86)
I have been using the Mac Programmer's Workshop since this summer and am very pleased with it. I have previously done extensive development work on the Mac in Lisa Pascal, Megamax C, and Consulair C. MPW C produces by far the best code quality, and has a development environment nearly equal to UNIX in power. (Some of the features were taken straight from UNIX, like makefiles, so this isn't too surprising.) I wrote a B-tree database system and a name mapping package for our distributed file system, TOPS, in Consulair C. Last week, I finally got around to converting them to MPW C. I cut no code, but the code produced by MPW C was two thirds the size of the Consulair code. This is a pretty significant improvement! I don't have benchmarks set up, but the code seems to run at about the same speed - I believe this is because the database system is disk-bound rather than software-bound, naturally. In a more compute-bound application, MPW C's use of registers rather than stack locations for automatic variables would be a big win. There are also some defects. Standard I/O is totally screwed up. I know, you're not supposed to use it on the Mac, but one of the criteria for my database system was portability, so I wrote the test program using standard I/O rather than as a Mac application. It runs as a tool under MPW, but not correctly, whereas it ran almost correctly under Consulair. (Not quite, though; Consulair forgets to echo the newline in gets to the tty.) IN MPW C stdio, stdout is file buffered; if you change it to the correct unbuffered form, it is amazingly slow. This is because the MPW shell is based on the rather slow MDS Editor (from Consulair....) which is not oriented toward terminal emulation. Input is also wrong; you have to select a response and strike enter to input it. This means that if you say "Want to destroy the planet? [yn] " and ask for a 'y' or an 'n' on the same line, the usual response sequence of typing the answer and hitting return/enter also involves a counter-intuitive and inconvenient mouse operation. But this is a minor quibble, since you should be using MPW to generate Mac software in most cases. Overall, MPW C is a big win over any of the other three development systems I've used, and I highly recommend it. -- Tim Maroney, Electronic Village Idiot {ihnp4,sun,well,ptsfa,lll-crg,frog}!hoptoad!tim (uucp) hoptoad!tim@lll-crg (arpa)