Path: utzoo!mnetor!uunet!husc6!cmcl2!nrl-cmf!ames!oliveb!intelca!mipos3!cpocd2!howard From: howard@cpocd2.UUCP (Howard A. Landman) Newsgroups: comp.sys.mac Subject: Re: LightSpeed C gripes Message-ID: <1072@cpocd2.UUCP> Date: 22 Jan 88 01:32:32 GMT References: <4Vw6hny00WAK5w00JJ@andrew.cmu.edu> Reply-To: howard@cpocd2.UUCP (Howard A. Landman) Organization: Intel Corp. ASIC Systems Organization, Chandler AZ Lines: 55 In article <4Vw6hny00WAK5w00JJ@andrew.cmu.edu> rs4u+@andrew.cmu.edu (Richard Siegel) writes: >3) "The system is extremely limited by memory constraints." > > At best, this is wrong. You can run programs of unlimited size on your >computer, be it Mac 128K, 512K, Plus, SE, or II. The segmentation is easy and >painless. It is true that the Macintosh imposes a global-space limitation of >32K, but this is due to the A5-relative referencing of globals. To work around >the limit, use pointers instead of large static arrays. This and other methods >of getting around the limit have been discussed time and time again in this >newsgroup. > > The 32K limitation can't be so awful -- many popular (and large!) programs >have been written using LightspeedC; for example, Aldus PageMaker, Adobe >Illustrator, Quark XPress, and LightspeedC itself. I can't agree with this at all. That's like saying that there was nothing wrong with only having 8 KB of memory on a TRS-80, because people could write programs that ran in that space. I have a fairly simple UNIX application that I was hoping to port to the Mac. Unfortunately, the system architecture is such that the program's database is kept in (virtual) memory, in a couple of 2 MB arrays (will need to increase size soon, as that is almost all used). Under a true VM system like UNIX, the program has a working set of about 160 KB - most of the database is not needed at any given instant, so it is automatically paged out to disk. I can easily run the program on a machine with only 1 MB RAM, even though the program virtual image is about 4.5 MB (and growing), and the UNIX kernel (which is locked in core) eats up over 250 KB. Am I wrong in stating that this program simply cannot be made to run in 1 MB on a Mac without major recoding? I like my Mac, but (because of stuff like this) don't plan to program on it until AUX is available on a system I can afford. This isn't LSC's fault, but defending it as perfectly acceptable seems rather misguided. > This is correct. LightspeedC is not a Unix C compiler that happens to be >running on the Macintosh; it is a C compiler that's useful for writing >Macintosh applications, drivers, and desk accessories in C. The Unix libraries >are there, but they're simplistic, and shouldn't be used for writing >Unix-style applications to run on the Macintosh. Thanks for the warning. That's almost enough to make me never consider it. >The Macintosh isn't a Unix >machine, and no amount of library support is going to make it one. Fortunately, Apple thinks otherwise, at least with regard to the Mac II. -- Howard A. Landman {oliveb,hplabs}!intelca!mipos3!cpocd2!howard howard%cpocd2.intel.com@RELAY.CS.NET One hand clapping sounds a lot like two hands clapping, only quieter.