gnustep-dev
[Top][All Lists]
Advanced

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

Re: Intermediate Summary: Re: GNUstep.org website redesign proposal


From: Lundberg, Johannes
Subject: Re: Intermediate Summary: Re: GNUstep.org website redesign proposal
Date: Wed, 8 Jan 2014 09:28:02 +0900

Hi All

I mostly agree with David about what features to highlight. ARC and blocks are definitely the two big features that have affected the way I program on iOS.

However, for someone writing apps for iOS / OS X and using features like automatic @synthesize (no need to write @synthesize) and the, according to David, brain dead array / dictionary literals :) it would be nice to know that you can transfer your code to GNUstep without having to rewrite all your NSArray initializers or add @synthesize everywhere... (maybe most people would take this for granted...)

--
Johannes Lundberg
BRILLIANTSERVICE CO., LTD.


On Wed, Jan 8, 2014 at 2:29 AM, Ivan Vučica <address@hidden> wrote:
On Tue Jan 07 2014 at 4:31:57 PM, David Chisnall <address@hidden> wrote:
On 7 Jan 2014, at 16:13, Ivan Vučica <address@hidden> wrote:

> I definitely wouldn't go with anything like Objective-C+ARC since I, for one, don't think ARC is nearly as an important addition to the language as @synthesize.

I completely disagree. address@hidden is a small improvement.  It lets you generate methods, but you can already do most of what it does with a macro.  It's nice, but it's not that special.  ARC, in contrast, is a big change to the language.  It fundamentally changes how you think about writing code, letting you think about object ownership rather than reference counts.  I'd put the non-fragile ABI in the same category as synthesised properties - it makes code cleaner and easier to maintain, but doesn't really change how you use it.  Blocks are in the same category as ARC: they're a big change to the language and change how you write code.  If we were to highlight two features that we support, blocks and ARC would be top of the list.

You can do it with macros, but a lot of people handwrote the getters and setters.

ARC does change the way you write code. It tries to turn Objective-C into a "magic" language to satisfy people used to garbage collection, or people who trust the compiler to do the right thing.

As we discussed at devmeeting 2013, my personal reasons for not trusting ARC are admittedly irrational: I was bit by GC many years ago, and one of the reasons why I approached Objective-C was that refcounting was consistently present, consistently ubiquitous and publicly exposed.

ARC hides it.

I don't like hidden reference counting.
 
> And five years from now, any arguments against naming it relative to Objective-C 2.0 will stand against naming it Objective-C+ARC or similar.

If our web site is still saying the same thing in five years, then we have other problems.

Let's compose something that makes it irrelevant if we change the website or not. Let's compose something that doesn't depend on one specific feature.

First big changes in the language came with what was called Objective-C 2.0. There is no need to invent our own point in time where the changes started to happen and where it is important to point out that we support post-1990s things.

At this point I think I gave enough input and will drop the subject.

_______________________________________________
Gnustep-dev mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/gnustep-dev



=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
秘密保持について:この電子メールは、名宛人に送信したものであり、秘匿特権の対象となる情報を含んでいます。
もし、名宛人以外の方が受信された場合、このメールの破棄、およびこのメールに関する一切の開示、
複写、配布、その他の利用、または記載内容に基づくいかなる行動もされないようお願い申し上げます。
---
CONFIDENTIALITY NOTE: The information in this email is confidential
and intended solely for the addressee.
Disclosure, copying, distribution or any other action of use of this
email by person other than intended recipient, is prohibited.
If you are not the intended recipient and have received this email in
error, please destroy the original message.
reply via email to

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