Live data from Hacker News

Apple is patenting Swift features

forums.swift.org

191–200 of 223 posts

Re: Apple is patenting Swift features

#191
post #170

Earlier quoted context omitted.

It really means very little that a patent was granted. They do not do an exhaustive search for prior art, or validation of relevance. Until it has been litigated no one really knows which patents can survive litigation.

But if you’re a company sued asking for less than what the cost of fighting would be, it’s in your interest to cut a deal. In that case, whether the patent is valid or not doesn’t matter.

> But if you’re a company sued asking for less than what the cost of fighting would be, it’s in your interest to cut a deal.

Or, it's in your interest to fight and make it as expensive as possible for the person making the claim to prosecute it, if you have a good case, because while it's an iterated game, not a single round, and you need to make sure the next however many potential trolls (whether the same with a new claim or a different one whose seen how you react) don't try to shake you down.

To quote Kipling: “But we've proved it again and again, / That if once you have paid him the Dane-geld / You never get rid of the Dane.”

Re: Apple is patenting Swift features

#192

Earlier quoted context omitted.

C# Nullable is optional for all purposes (a struct with .Value and .HasValue), it's just restricted to value types.

right, c#'s nullable types are the ultimate in syntactic sugar in that you can just use them like regular value types in most places without realizing they are monads underneath.

I wouldn't say they have substantially more syntactic sugar than other languages with the same. If you need to use them in the context that is not optional, you need to use HasValue/Value, or casts, or (since recent versions) pattern matching to extract the value.

The only special sauce I can think of is that C# also implements null-lifting for most operators in the language, which is not necessarily a good thing because it treats null as "unknown" rather than "missing" - e.g. a + b works on int?, and will produce null if either a or b is null. With Boolean operators, it's even clearer - false & null is false, true | null is true, but true & null is null, and false | null is null. But quite often this is not what I actually want! If null really means that the value is missing, then a + b shouldn't even compile for optionals. But in practice, I'd say that vast majority of all uses of Nullable are to denote missing rather than indeterminate values.

Re: Apple is patenting Swift features

#193

Chris Lattner has commented on the OP: ----- Disclaimer: I'm not an apple employee and not am not lawyer, this is just my understanding of the situation having spent lots of time talking to lawyers and other experts about this: I agree with much of the sentiment that software patents are often silly and the system is broken in many ways. This patent is a reasonable example of that (patenting syntactic sugar for monad…

What you misread is that the patent is awarded to Apple, not Swift. Apple is not being released under Apache 2 license and Apple is not restricted to using the patent only for Swift. If they decide tomorrow to have another language that is not being released under Apache 2 license then there is nothing stopping them from using this feature as the patent is already theirs. Also, has anybody noticed that every single l…

patenting syntax might fall in the same box as patenting number sequences

Re: Apple is patenting Swift features

#195
post #2

These patents seem to be a countermeasure against patent trolls, since the code uses the Apache license. Quoting from link: > Apache license gives the right to use patents required to use the code (assuming the original author had those rights), and the code implementing optional chaining in the compiler is Apache licensed. So, the only thing Apple having a patent on optional chaining does is to stop frivolous suits…

Is it actually a legitimate concern that a patent troll would be able to sustain a claim to syntactic sugar around a specific monad? It seems far more likely that a non-patent trolling entity would implement a similar feature in some other language (along with the languages that already have similar features) than a patent troll would sue and claim patent rights to it.

Re: Apple is patenting Swift features

#196

Earlier quoted context omitted.

Patents _are_ supposed to cover inventions, not implementations. They're about innovating technological abilities, and disclosing them in exchange for limited monopoly; it's not about specific products or specific implementations. If it were just about implementations then all patents could be easily circumvented and there would be no reward in exchange for the full disclosure of a new invention. (Design patents do c…

Patents are about how you do something, not what you do. This patent is about how Apple's compiler implements some programing language features. It does not protect the programming language feature itself. Another compiler that employs a different 'how' can implement the same programming feature. So, if you don't want to infringe on this patent, you are forced to invent (or use) another way of doing the same thing.

They didn't invent anything anymore than I invented the peanut butter sandwich i made yesterday

Re: Apple is patenting Swift features

#197

Earlier quoted context omitted.

but what about reimplementing a compiler from scratch without reusing any of Apple's code? It wouldn't fall under a definition of Derivative Work under terms of Apache 2.0 then

If your going this way you must also take account for "reimplementation from scratch under restrictive licence”. Apache license don’t say anything about clean room reimplementation under other licence because it’s a tricky subject beyond the scope of the license. I personally think that if someone reimplement Swift, name it Schwift, guarantee it’s 200% faster (for some reasons), and then sell commercial licence of th…

Sorry, I'm not sure I understand this point. Why would I need a different license for this from scratch implementation? What if I want Apache 2.0 as well?

Also, I'm convinced that many many people do have interest in this. Many people were interested in GCC existing in parallel with whatever other compilers were available. Heck, Chris Lattner's Clang wouldn't exist if C and C++ were "protected with patents from patent trolls". Are you saying that all these alternative compilers were a total waste of time?

Re: Apple is patenting Swift features

#198

Earlier quoted context omitted.

but what about reimplementing a compiler from scratch without reusing any of Apple's code? It wouldn't fall under a definition of Derivative Work under terms of Apache 2.0 then

If your going this way you must also take account for "reimplementation from scratch under restrictive licence”. Apache license don’t say anything about clean room reimplementation under other licence because it’s a tricky subject beyond the scope of the license. I personally think that if someone reimplement Swift, name it Schwift, guarantee it’s 200% faster (for some reasons), and then sell commercial licence of th…

> I personally think that if someone reimplement Swift, name it Schwift, guarantee it’s 200% faster (for some reasons), and then sell commercial licence of that it should be sued

Should? What rule, law, or moral code does it break to reimplement something?

Re: Apple is patenting Swift features

#199

I'm having a hard time getting a clear picture what this actually entails. I am in violation if I reimplement Swift without forking the project (i.e. a "clean room reimplementation")? If I'm designing my own language, am I no longer allowed to include optional chaining? If so, I'm pretty disappointed with this direction, since it runs counter to the entire point of accessible programming languages, including many of…

Exactly this, thank you for summarizing this so well! I've tried to clarify this exact point at Swift Forums, but I haven't seen even a clarifying answer from anyone in the core team on this point. Everyone says "it protects Swift", but looks like this protection comes at a cost of the overall ecosystem.

And this is one very real reason to avoid languages owned by huge companies like Google's Go and Apple's Swift. They can and will do evil things, instead of supporting them please consider supporting smaller languages which are often just as good or better as Swift/Go.

Re: Apple is patenting Swift features

#200
post #199

Earlier quoted context omitted.

Exactly this, thank you for summarizing this so well! I've tried to clarify this exact point at Swift Forums, but I haven't seen even a clarifying answer from anyone in the core team on this point. Everyone says "it protects Swift", but looks like this protection comes at a cost of the overall ecosystem.

And this is one very real reason to avoid languages owned by huge companies like Google's Go and Apple's Swift. They can and will do evil things, instead of supporting them please consider supporting smaller languages which are often just as good or better as Swift/Go.

Such as? Many of the newer languages I’m seeing, notably Swift and Go, but also TypeScript, ReasonML, and Rust have their development backed by one corporation.
Post reply on HN