discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Which ObjC2.0 features are missing in the latest GCC?


From: Andreas Fink
Subject: Re: Which ObjC2.0 features are missing in the latest GCC?
Date: Fri, 22 Nov 2019 15:44:38 +0100

> 
>> This is a major advantage of Objc2.0. 
>> I must admit it took me a while to get used to though. But at the end it 
>> paid off a lot.
> 
> Well, to be precise: ARC could also be done with ObjC 1.0 as far as I see. 
> There is IMHO no special syntax for ARC. You just remove all 
> retain/release/autorelease from the code and the compiler is clever enough to 
> magically make it still work.
> 
> So in summary, ARC alone isn't sufficiently helpful for my work to switch to 
> ObjC 2.0 and no longer use gcc.
> 


The fact is that gcc can not do ARC. This is the main show stopper for gcc. 
On the other hand, switching from gcc to clang is not a problem for 
"traditional programming style" programmers.

The only problem I can see is platforms which gcc supports but clang does not. 
So the real question is are there any users who use ObjC stuff with GnuStep 
under, lets say strange embedded systems.
Given ObjC does not have a bright future under gcc anyway (as they have still 
not implemented ObjC 2.0 features after like 10 years it's out now), does mean 
it will only get worse.

Besides that we have to consider that sticking to gcc will also hinders 
newcomers to get involved. And this i I think is a important point.
The developers hehre with 20 years+ experience will have no problem working 
around non ARC stuff and going backwords because we all know the  old way.
The youngsters out there however don't. If we want to get Gnustep into the 
modern area, we will need to be attractive to newcomes and this means keeping 
up with the modern API's etc. And gcc is miserably failing here. Thats the main 
problem, not if you don't want to use ARC (which is still fine) or not. Others 
want to use ARC but can't under GCC.

In other words, going for clang doesnt mean ObjC 1.0 code wont run but it means 
a lot of ObjC2.0 code will start to run.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]