Live data from Hacker News

Apple is patenting Swift features

forums.swift.org

141–150 of 223 posts

Re: Apple is patenting Swift features

#141
post #66

Earlier quoted context omitted.

Ah, but you are overlooking the key difference: you cannot commercialize an engine without building it. With software, commercialization costs "nothing" [1]. A smaller company could come up with a unique engine design, but without patent protection, a bigger company could just drop by and take the design and build it themselves. In other words, the larger company would get R&D "for free". In the engineering world, on…

I don't think that's really different between hardware and software. Even in software, the bigger company often has a decisive advantage in marketing. The history of computing is littered with the graves of small companies crushed by behemoths. So that might actually be an argument in favor of software patents, if they actually did protect the interests of small companies. Unfortunately it's almost impossible to impl…

> I don't think that's really different between hardware and software.

Marketing budget is something inherent in small vs. big companies in all industries, so I do not agree that the fact that software and hardware share this makes them similar.

Your example does demonstrate a benefit of software patents in theory, but is this how they are typically used in practice?

Re: Apple is patenting Swift features

#142

Earlier quoted context omitted.

So-called software patents are always drafted as machines that can perform the claimed actions. These machines are comprised of one or more hardware components, including some hardware components that can execute machine readable instructions. (There really is no such thing as a software patent.)

In Europe we do manage to make that distinction, though it is nuanced, and it specifically excludes the "program on a media" or "program in the physical memory of a computer" methods of trying to make all software appear to be physically technological.

True, through many well-drafted US "software patents" can be successfully prosecuted in the EU without too much trouble.

Re: Apple is patenting Swift features

#143
post #132

Earlier quoted context omitted.

It is clear that you, like many commenters in this thread, have very little, if any, understanding of US patent law. This patent is a nothing burger. Don't take it personally. Patent law is about the most complex area of law. Most tech press blows it too.

Patent law that allows software patents is already seriously messed up and urgently needs fixing. When it allows patenting programming languages, it's outright sick.

Software based inventions aren't special, they are just new to the game.

Re: Apple is patenting Swift features

#144
Lisps that return nil for (car nil) are implementing "optional chaining".

yes, it chains:

   (cadar nil) -> nil ;; the nil object doesn't have a "car"

   (cadar '((b c))) -> c

   ;; i.e.
   (car (cdr (car '((b c))))) -> c
This is exactly like, in Swift-like syntax, doing '((b c)).car?.cdr?.car? where the ? indicates "don't blow up if it's nil", except the "don't blow up" is built into car and cdr.

This freedom was introduced in InterLisp, quite a few years before Jobs and Wozniak got together in a garage to make the Apple I.

If you want prior art, there it is.

Another prior art, related to this, is the Null Object Design Pattern, which is very similar.

In Common Lisp, this pattern (like many others) disappears because `nil` is the element of a `null` class, to which we can specialize methods. So in other words, we can make

If we have a method called position that normally returns the position of an object, if we specialize the method to the null class we can make (position nil) do something.

In Java-like OOP languages we would have a specific NullWhatever class that implements the same Whatever abstract interface/base as an ActualWhatever. Thus we then have an optional Whatever because code that takes a Whatever can take a NullWhatever or an ActualWhatever.

Yet another prior art is the use of sentinel objects instead of null pointers: for instance doubly-linked lists that have a special node, not considered part of the list, that is the predecessor of the first, and successor of the last. Then the code operating on lists neither blows up with a null access, nor does it have to check for nulls. Statements like node->prev->next = node always work.

"The single event that had the most influence on the creation of the League [for Programming Freedom] was Apple's lawsuits against Microsoft about supposed copyrights violations of the look and feel of the Macintosh in the development of Windows."

https://en.wikipedia.org/wiki/League_for_Programming_Freedom

Re: Apple is patenting Swift features

#145
post #5

Earlier quoted context omitted.

Thats not the only thing, no? Doesn't it also prevent e.g. other people/company from including that feature in their own programming language that doesn't use Swift at all?

Someone could even implement the feature in a dynamic language like Python or Lisp for a particular application. Does that mean the application is infringing the patent because they didn't use Swift?

Many Lisps (like ANSI Common Lisps, and many of its predecessors) have optional chaining in their list processing; it has existed before Apple Inc.

https://news.ycombinator.com/item?id=19002470

Re: Apple is patenting Swift features

#146

Earlier quoted context omitted.

Yes. This, exactly. By patenting this language feature Apple has very clearly stated that they are "making a claim of ownership" as it were of this feature across all languages and non-derivative implementations. ...which is a perfect example of why software patents shouldn't exist in the first place. One could implement this feature in any number of novel, unique ways therefore the patent is nothing more than a clai…

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.

Re: Apple is patenting Swift features

#147

Just to bring clarity on what has been patented on one of the patents: Monad Maybe where Nothing >>= _ = Nothing (Just x) >>= f = f x Those three lines, implementing the Maybe Monad/bind operation, are commonplace in all functional languages. (They just called it Optional instead of Maybe and "chaining" instead of "bind"/>>=) ( https://docs.swift.org/swift-book/LanguageGuide/OptionalChai... ) EDIT: The second one lin…

I've seen patents that hinged on a single line of Javascript code because it was used in a context that has never been patented before and no prior art. Not only was it submitted, but it was accepted and is a patent now.

Re: Apple is patenting Swift features

#148
post #132

Earlier quoted context omitted.

Patent law that allows software patents is already seriously messed up and urgently needs fixing. When it allows patenting programming languages, it's outright sick.

Software based inventions aren't special, they are just new to the game.

From what we see, software patents have caused more harm than good, but would be great if there were enough concrete public examples listed somewhere that prove otherwise.

Re: Apple is patenting Swift features

#149
post #12

Earlier quoted context omitted.

theoretically publishing an explanation of the methods and not patenting it is sufficient

Not since the US changed to first-to-file. A patent can be issued to another party and you can be sued for using your own invention. If an examiner never finds your prior art you're still on the hook to deal with the expensive legal process of defense and invalidation.

I don't think first to file is relevant to prior art ( direct from attorneys for things I've tried to patent this year with medical devices)

Re: Apple is patenting Swift features

#150

Earlier quoted context omitted.

no.

Patents are written to be as broad as possible. The most careful interpretation is that if anyone does option chaining anywhere, it is covered by the patent, and actionable by the patent holder. Companies that are mere consumers of IT have been sued by patent trolls, and paid up.

Take a look at the claims. The patent does not claim option chaining. It claims a few ways to implement a system that may support option chaining.
Post reply on HN