Swift and Dynamism
blog.wilshipley.com
blog.wilshipley.com
Kind of reminds me of the old slogan from the anti-nuclear movement in Germany: "Atomkraft, Nein Danke! Strom kommt aus der Steckdose". (We don't need no stinkin' nuclear power, electricity comes out of the wall socket)
Sounds like a hoax slogan (possible from anti-anti-nuclearists). The one I remember was "Atomkraft, Nein Danke!" by itself.
They could know what they are doing, or they could be blathering idiots. Or, possibly, their use cases might be different than another person's.
Whatever the case, by just saying that they "won't miss feature X", they still tells us something about them but nothing about the feature.
To do the latter, they'd have to up their argumentation.
I can understand that there is probably a problem related to ARC and garbage collection. But missing this set of features means that there are lot of things that simply cannot be implemented in Swift and thus having remain in Objective-C (Core Data, other ORMs, IoC-frameworks etc.).
That means the iOS/OSX-platform will continue to be split in two programming languages and object-models for the foreseeable future.
I don't think so, since Objective-C also uses ARC and is very dynamic. I'd say the typesystem/runtime of Swift might have more to do with it.
The Objective-C compiler gets significantly more strict with ARC turned on, for example sending unknown messages is an error instead of a warning. Various runtime functions that used to be quite safe also become dangerous, for example it used to be OK to send performSelector: style messages with non-object returning messages (void) and simply ignore the result. That now becomes a crash as ARC tries to retain the return value. So in order the be compatible with ARC, the "cheap and cheerful" reflection that ObjC has isn't really sufficient.
ARC is predicated on the compiler having essentially a statically checkable call-chain.
iOS/OSX has been split into multiple languages for a long time, anyway. The C/C++-based framework subsystem has produced many others..
> I am better Swift programmer after a year and a half in Swift than I was in Objective-C after 26 years.
I like and use swift, but I haven't reached a point where a lightbulb went off and I proclaimed "Hey I needed this".
You don't feel more productive in swift? Like a lot more?
EDIT: Just the compile times alone drive me batshit. That doesn't mean that there aren't nice aspects, certainly some of the syntax has been simplified by unifying two disparate syntaxes...but they could have done so much better, even there.
http://blog.metaobject.com/2016/05/what-missing-in-discussio...
See also: The Siren Call of KVO and Cocoa Bindings http://blog.metaobject.com/2014/03/the-siren-call-of-kvo-and...
I'd also want more strongly typed keys, less strings everywhere. I do use NSStringFromSelector as much as I can, but strings are unavoidable in IB.
Also the handling of one-to-many dependencies could be made a lot more intuitive as well.