3 ms·
Lisa 2 was cheaper than many later Macs, but the Mac folks seemed to have little interest in convergent evolution for the platforms or in integrating Lisa featu
by musicale 5mo ago
Lisa 2 was cheaper than many later Macs, but the Mac folks seemed to have little interest in convergent evolution for the platforms or in integrating Lisa features like memory protection into the Mac. The result was that Lisa died as the Macintosh XL (ex-Lisa), with a Mac compatibility environment (MacWorks, which looked terrible with the stock Lisa rectangular pixels but better with a "Screen Kit" square pixel upgrade) as a consolation prize, while Mac users had to wait until Mac OS X for memory protection. Ultimately the Lisa hardware was able to run 68K versions of Mac OS through 7.6.1 in 1997.
- II2II 5mo agoAssuming the Mac folks had no interest in converging the platform in favour of the Lisa is somewhat unfair. While it sounds like some code was shared between the two platforms, the Lisa's operating system was quite different. It would have been difficult to make Lisa software operate under the Macintosh System Software. To my knowledge, there was virtually no software for the Lisa anyhow. Breaking software compatibility on the Macintosh to get the benefits of Lisa would have been a terrible business decision. Aside from that, the MMU in the Lisa would have been a custom solution which Apple would have to support. When Motorola introduced an MMU, it was for 68020 generation machines. Apple should have been able to introduce memory protection at that point, but didn't. One of the reasons was that Apple struggled to make that next generation operating system while retaining compatibility with existing software (albeit, memory protection may have been only one of many problems). This was by no means a problem exclusive to Apple. Other platforms ran into similar issues.
- musicale 5mo agoApple doesn't seem to have leveraged or combined work on (Lisa, Lisa Smalltalk, Lisa Xenix, Mac OS, A/UX, ...) as successfully as they might have. As you note, protected memory was deferred to multiple failed Mac OS successor projects (Pink/Taligent, Copland/NuKernel, etc.) Ultimately Apple gave up, acquired Steve Jobs and NeXT, and eventually successfully migrated the Mac platform to an OS with memory protection. Since then however Apple's OS and hardware strategy has been much more coherent, with macOS, iOS, iPadOS, tvOS, watchOS etc. sharing code, and sharing SoC technology as well. Ironically this is similar to Microsoft's "Windows [NT] everywhere" strategy.
- musicale 5mo agoIn addition to Xenix, there was apparently also a System V port for the Lisa.
- leoc 5mo agoThat delay in shipping a memory-protected Mac was probably originally at least as much the result of upper-management politics as anything else. After Jobs left Apple Gassée cancelled Jobs’ pet project, the Big Mac which was intended to run Mac applications on a Unix base. Big Mac project leader Rich Page (and IIRC some other project members) rang Steve Jobs begging him to do something, and the rest is history.
- pjmlp 5mo agoOr fully embracing the Pascal programming model. I think it was in one of the On the Metal interviews where one of the guests mentions MPW was a submarine project, from UNIX background engineers, to eventually replace Pascal with C++.
- WillAdams 5mo agoYes, but that could be problematic given the memory constraints of that time: https://www.folklore.org/Puzzle.html https://www.folklore.org/Puzzle.html To this day, one of my favourite word processors is WriteNow, which was ~100,000 lines of assembly.
- pjmlp 5mo agoWhy is writing inline Assembly considered an advantage of C, a language extension even not part of ISO, and always used to point out issues when other languages make use of it? Naturally there had to be a balance, until mid-90s what we consider AAA games, were mostly Assembly.
- WillAdams 5mo agoI didn't mention C. The observation was that linking in the Pascal library was problematic when one was storing everything on a single 400KB Micro Floppy.
- pjmlp 5mo agoIt was implied from my previous post, the story regarding size and the reference to Assembly. Sorry if misunderstood.
- musicale 5mo agoWell they did exactly that - rewriting the Finder in C++, etc. But it's unfortunate that losing Pascal/Object Pascal also meant losing bounded strings and array bounds checking, even if people turned the latter off in the 1980s because they thought that the performance cost wasn't worth the reliability improvement. That was probably the wrong trade-off then (at least for most regular application code) and even more so today (especially for the vast amount of legacy C code.)