Blocks are a bigger problem than memory management.  It is holding us back.

On Fri, Nov 22, 2019 at 12:38 PM Fred Kiefer <fredkie...@gmx.de> wrote:

> > Am 22.11.2019 um 15:44 schrieb Andreas Fink <af...@list.fink.org>:
> >
> > 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.
>
> This is another discussion I would have preferred to stay out of. We had
> this and other similar discussions so many times before. To me it just
> seems not worthwhile to participate once more.
>
> There are many benefits that ObjC 2.0 support with clang could bring,
> still I can understand why some people prefer to stay with a compiler and a
> language they know. I myself use gcc and even with its limitations it
> allows me to do useful programming for GNUstep. And many times gcc has
> pointed to bugs in the code where clang accepted the code. (The opposite is
> also true, it really has been good for us to have two different compilers
> to inspect our code.) What I would never do is to argue for others to use
> gcc. Just use the compiler you prefer.
>
> And this is where this discussion is getting odd. It has been possible to
> use GNUstep code in ObjC 2.0 projects, thanks to the great work David has
> been doing. And if we are honest the work to support this inside of GNUstep
> wasn’t much. Just using a few macros here and there and things work. We
> could even go further and have a few more macros that allow us to specify
> the property attributes in GNUstep base and redefine the ASSIGN, RETAIN and
> RELEASE etc macros as noops and with a bit of code cleanup GNUstep base
> could be compiled with ARC. All of this should be possible while still
> keeping support for gcc. Even for simple block usage I am sure that if
> David and I set down for a weekend we could come up with a macro to define
> a callable block (probably without capturing variables and without ARC
> special cases, just the most common case). It is just that the need for
> this hasn’t come up.
>
> I really don’t see gcc support is itself holding us back. At least not
> more than the incomplete CoreFoundation, or the fact that base is not build
> on top of core base, the binary incompatible of Foundation and GNUstep base
> or the missing usage of C++ in the implementation of GNUstep. These and
> some other factors seem more important to me. But if we start to change all
> of these, the resulting project would be quite different from current
> GNUstep. And most likely we would have lost most of the current GNUstep
> developers in the transition process. Nobody can tell whether we would gain
> new active core developers through this change. I really doubt that and
> therefor would prefer not to drop gcc support. If you disagree, fine. But
> for GNUstep it would be great if you could pledge to work on the code in
> the next few years. Otherwise the project will be dying even faster than it
> is now.
>
> Fred
>
>
>

-- 
Gregory Casamento
GNUstep Lead Developer / OLC, Principal Consultant
http://www.gnustep.org - http://heronsperch.blogspot.com
http://ind.ie/phoenix/

Reply via email to