2,454 karma · joined March 31, 2009
However, they are cheap, and they do honour their warranties. Would just be nice if they didn't have to quite so much.
class Example {
let ExtraMul = 5
}
let weakly = Example()
let squareAndABit : Int -> Int = { [weak weakly] in $0 * $0 * weakly!.ExtraMul }
squareAndABit(2) // 20
Positional lambda arguments, implicit returns for single expression arguments, capture lists if you want to alter the default capture mode. It's got really rather nice first class function support.To me, the more important answers are deterministic destruction, and no GC pauses. All of Objective C is reference counted these days, with retain/releases inserted by the compiler (so all you have to do as a programmer is resolve cyclic references with weakness). Thus, you know exactly when an object will die, and have its dealloc method called. You're also sure you'll never end up in a situation where memory pressure causes system hitching due to GC. Given that a key platform for Objective C is iOS (low memory, "low" CPU), and that Apple's trademark tends to be fluid UI, avoiding these problems is really helpful.
I also ran up against another annoying bug/oversight/v0.1ism : You can't inherit from a generic class without becoming generic yourself. So, even if you fully instantiate your parent's type information, you have to be generic as well! For example:
class Foo<T> { ... }
class Bar : Foo<String> { ... }
You'd expect Bar to be a non-generic type, but this throws a compiler error. You have to declare: class Foo<T> { ... }
class Bar<String> : Foo<String> { ... }
Which seems just odd. The best workaround I've found thus far is class Foo<T> { ... }
class BarClass<String> : Foo<String> { ... }
typealias Bar = BarClass<String>
Bleh. I've filed a radar against this one - it seems like an annoying oversight, even for this early version.The primary vibe I'm getting from Swift is pragmatism. They had various red lines to follow: must be as fast as Objective C; must have a minimal to non-existent runtime (so AOT compilation all the way); mustn't have garbage collection, must interoperate with Objective C/normal C with ease; etc. This had led to a language which, despite being at version 0.1, has a fair few oddities and warts already. For example, the "almost but not quite immutable" arrays seem to be an artefact of absolutely wanting array performance to be equal to standard C. Typealiases vs parametric protocols seem to be a desire to have as much type information fixed as soon as possible.
It seems that rather than design a language where they might not have solutions for their red lines up front, they've designed a language where they can provide them. Rather than make theoretically "better" choices the compiler can't deliver perfectly in V1, but can in V4 or 5, they've gone for "yeah, we can almost certainly ship that". Given that this is essentially Apple's private language, I assume they'll be quite aggressive about deprecating features and moving people onto the "better" solutions (high-kinded types, richer immutability etc) when they can deliver them whilst meeting the core goals. It's an interesting approach - most other languages are happy to take a few years to get going, whereas Swift seems to want to go from 0 to 60 in 4 months. It reminds me most of C# 1.0, but with harder restrictions on what they've been told to deliver. At the moment, it's interesting, and a big leap from Objective C. By V3, it might be "excellent".
This comment is only marginally tongue in cheek.
If creative output has a value, then people should be free to exchange their creations for anything they like. To create restrictions that prevent people from writing a book then making an arrangement with a publisher, is just to prevent people from actually being able to do anything with their creations.
I'm not saying people will stop having ideas, or creating music, etc. What I am saying is that people without private means or patrons will have to stop performing creative acts that require a significant time investment. If I've got a wonderful idea for a book/film/game/whatever, but know it will take 5 years to make, how do I make it when I need to work 8-6 to pay for food/shelter etc?
Eliminating IP is to construct a return to patronage; the very wealthy deciding what creative output it worthwhile. IP is actually a hugely egalitarian concept; the world can decide what has value, and reward the creator post-hoc, because the creator is ensured a return.
No, it's derogatory. Very few phrases of the form "Oh, it's just your imaginary X" are designed to be complimentary. In common parlance, "imaginary" is just synonymous with "not real". The phrase "imaginary property" is designed purely to advance an agenda where people write books, create films, make software, etc all for some "manna" which, when pushed, advocates can't actually specify beyond saying "they'll find new business models". Yes, they will. Involving not writing books, films, etc.
We can argue to what extent this force is necessary, but to claim that intellectual endeavours are just "imaginary" is to do a huge disservice to millions of people who pour their lives into the creation of new and exciting things.
With the release and success of the App Store, that became unnecessary. I guess killing it was a function of its relative lack of popularity; Apple in the Jobs 2.0+ era justifiably don't like keeping dead-weight projects around.
Next bizarre justification for benefiting from other peoples' commercial work without paying?
And, to those saying "This is for non-copyright/author approved stuff", I say "I was not born yesterday".
I guess it's because I was excited about the gaming and "new experience" potential, and the hope that a young company full of smart people would excel in that space. Unfortunately, the only association I can muster between gaming and Facebook is the spamfest Farmville. The biggest experience I can think of is the data mining.
VR is one of the few upcoming tech changes I can actually see adding "delight" to my computing experience. Alas, I've never experienced any delight with Facebook; at best, I've managed grudging tolerance. I think I'm sad at the loss of what might have been.
If we're going to claim this is deliberate, then the same accusation can be levelled at every security bug ever introduce in an edit. This is not evidence, it's just trolling.
If we're going to entertain conspiracy theories, I favour "A rogue Google agent snuck in to Apple headquarters and edited the file whilst the user was out for lunch". Or perhaps Zergloids. Come on people, we're getting as bad as Slashdot over here!
Alas, such a proof throughly fails the second test. I can't see how to gain insight into the problem from such a proof, beyond just it validating previous thought chains of the form "If X were true, then I could deduce Y". It doesn't reveal more about the structure of the problem, or other results in the space.
It's no doubt useful (and all credit to the authors), but in terms of generating new mathematics, I'm dubious. Perhaps people more versed in this specific sub-field can tell me if I'm wrong?
> Well, yes... Supposing that IP rights should exist!
Well, of course. But we could have the same debate about property rights, so I could deny that "theft" exists at all, yet the language used to describe theft wouldn't change.
One other angle on this, for the "steal absolutely must deprive someone of something" view, well - something is actually lost, that cannot be replaced. The right of the IP creator to be repaid by the person who grabbed it. Many people say "Well, I'd never have bought it anyway". Whilst true for now, would it still be true in 1 year? 5? 10? Would you have bought it for your kids, or because a sequel came out that you do want to buy? By taking it, you rob the person of the ability to sell it to you in the future.
I think it's incumbent upon anyone who thinks "intellectual property is unjust" and who acts on this belief by just denying its existence, to propose and get support for a viable alternative for supporting the millions of people who depend on it for their livelihood. Otherwise, you're just an anarchist, burning the system down and denying any contribution to the people who have committed to a certain lifestyle on the guarantees currently provided by society.