Andreas,
On Thu, Nov 21, 2019 at 6:26 AM Andreas Fink <[email protected]> wrote: > > > On 21 Nov 2019, at 12:15, Gregory Casamento <[email protected]> > wrote: > > David et al, > > For all of the reasons listed in the previous email I am starting to > wonder about the viability of using GCC in the long run. As far as I can > see it the facts are these: > > 1. GCC does not support ARC, blocks and many other features which the API > is now using > 2. Supporting GCC consumes more time due to having to work around these > features using awkward macros > 3. The further clang's implementation and gcc's implementation of the > language drift apart, the more macros we will need to add > 4. The work needed to add these features is monumental > 5. We cannot depend on the GCC team to add these as they are more focused > on languages outside of ObjC. > > The advantages to dropping GCC are as follows: > > 1. We can simplify the code drastically by removing any and all macros to > abstract the missing features > 2. We can switch to using faster C++ or ObjC++ implementations of certain > functionality. TBD further. > 3. We get ARC memory management for free. > 4. Speeds up development since less time is spent on managing some of the > above. > > Disadvantages to dropping GCC: > > 1. Political backlash from the FSF (possible, but unlikely there are > projects which use languages not supported by GCC) > 2. Not able to support older hardware on which clang is unavailable and > gcc still is. > * We need to assess how critical supporting that hardware is. > 3. Altering our "NetBSD" like philosophy where we can say "Of course > GNUstep will build on it." > > Right now these lists are just food for thought. I am trying to start a > discussion about this, not making any final decisions yet. > > Yours, GC > > > I completely agree. > > I have strong doubts that ObjC is used anywhere in the exotic hardware > area. > I'm referring to older platforms, such as Solaris 9 or earlier and architectures which don't currently have a version of clang on them. > Like if I look at the embedded field where mostly other processor types > are used, I don't see why GNUStep would be of any use there. And if, they > can still use an old frozen gcc version if they are old. > Luckily I have had some experience with some embedded applications which currently do use processors powerful enough to use ObjC, but it is rare and those usually have clang available. > I must admit that myself I use GNUStep without any desktop in mind, > basically Foundation is what I need for my server applications because my > code is heavily written in ObjC and especially because of its nice features > such as ARC. So for me going back to gcc is absolutely impossible. > Indeed So besides Intel and ARM architectures, what is really used out there in > the field? > . > SPARC, PowerPC, etc. Sincerely, GC -- Gregory Casamento GNUstep Lead Developer / OLC, Principal Consultant http://www.gnustep.org - http://heronsperch.blogspot.com http://ind.ie/phoenix/
