Re: Thoughts on Objective-C++
Re: Thoughts on Objective-C++
- Subject: Re: Thoughts on Objective-C++
- From: Turtle Creek Software via Cocoa-dev <email@hidden>
- Date: Mon, 11 Nov 2019 20:05:30 -0500
I didn't mean to start a language war, because it's not about C++ vs
Objective-C or Swift. It's about whatever lets us create software that
runs on Macintosh and pays for the development cost. Right now, it only
makes sense to write an entire app in Objective-C or Swift if it's OK to
limit sales to Apple hardware. That's no problem for iPhone apps, because
iOS has 57% share in the US. Ditto for small Mac apps, because development
cost is small.
Unfortunately, software for any vertical or specialty market has to deal
with Mac market share. It's 20% overall, but only 2% or 3% for our niche,
and falling. Probably 10% or less for businesses in general. For most
apps, that means writing code in something other than Obj-C or Swift, with
minimal pain to connect it to a Mac GUI. Then having it last long enough
for sales to repay the programming cost. We couldn't accomplish that with
Cocoa as is. Not with subs, nor with our own staff. An easier connection
from C++ to Cocoa would have helped.
I'm really not eager to be working in MFC. It has plenty of flaws, but at
least it's C++. We can ship a Windows update in a year or so. Then sell it
for another 10 or 20 years. The only reason we need to update at all is
because the subs doing the Windows port cheated, and used QuickTime DLLs
for the Windows port.
Casey McDermott
TurtleSoft.com
On Mon, Nov 11, 2019 at 5:33 PM Jens Alfke <email@hidden> wrote:
>
>
> On Nov 11, 2019, at 10:46 AM, Turtle Creek Software <
> email@hidden> wrote:
>
> That means no use of const. All pointers instead of & references. Both of
> those are good at turning run-time errors into compile-time. […] No
> public/private to manage access. Etc. It was like going back to the early
> 90s. Doing without features we learned to use the hard way.
>
>
> Well yes, Obj-C is not a very good C++, just as C++ isn't a very good
> Obj-C. And Haskell isn't a very good Ruby, and vice versa.
>
> I like C++ and use it daily, but I could write a litany of complaints
> about it compared to Obj-C and Swift — C++ has meager
> reflection/introspection, its collection and string APIs are horrendous, it
> has weak and awkward support for memory management, templates are a
> super-kludgy [SFINAE, OMG] way to implement generics, it promotes writing
> unreadable code, etc.
>
> I'm not just joking here. Obj-C's dynamic nature is at the heart of a lot
> of Cocoa's powerful features like Interface Builder and KVO. Super-static
> languages like C++ don't work well for GUI development, IMHO, because they
> make it hard to compose high-level objects together.
>
> —Jens
>
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden