Re: WTF? How can this work?
Re: WTF? How can this work?
- Subject: Re: WTF? How can this work?
- From: "Erik M. Buck" <email@hidden>
- Date: Sun, 19 Aug 2001 15:05:06 -0500
>
It's clear to me that nobody complaining about Mac OS X 10.0 vs.
>
OPENSTEP was around for OPENSTEP 4.0, but probably came along later
>
after 4.2 (or they have short memory). Oy! what a lot of wailing and
>
gnashing of teeth there was. "It's a memory hog." "App launch is
>
slow." "The graphics are slow." "Converting my old code is hard" (and
>
it was much much harder than any Mac OS X transition). [OPENSTEP 4.0
>
avoided most of the "the new UI sucks" complaints because the new UI was
>
dropped after pre-release 1 for time-to-market reasons.] The wisdom of
>
string objects instead of nice fast char *'s was certainly questioned
>
more than once, and we're still paying the performance penalty for that,
>
as we always will.
I went through the transition and it was painful. At least old binaries
continued to work!
I think the principal difference between the increased memory footprint and
degraded performance of Openstep 4.0 and the current situation is that
Openstep 4.0 dramatically improved the frameworks. We got something very
valuable for the cost. We were all writing our own string classes and
document classes and tab views and inspectors already so we could appreciate
them when NeXT provided some of those and made them ubiquitous (OK we waited
until Rhapsody for many of those). From a Cocoa developer's point of view,
how did the implementation changes and the introduction of Core Foundation
dramatically improve the frameworks ? The performance of Foundation is now
atrocious. How could things be slowed down so much ? A 450 MHz G4 performs
worse that a 266MHz Pentium II running substantially the same Foundation
code. That is embarrassing!
Remind me what new features were added to Foundation to justify the changes.
Cocoa is arguably the finest set of frameworks ever designed. I thank and
congratulate the authors. If nothing else, Cocoa is a great teaching
example to be emulated. Now, why degrade the implementation ?