Apple is indeed patenting Swift features

So, I took a look at the actual claims of patent 9,952,841. Note that legally speaking, only the claims are significant in determining the scope of the patent, not the description.

The independent claims are 1, 11, 16, and 22; the other claims are all dependent on one of those (i.e. they're further elaborations with more specific limitations).

All four independent claims require, among other things:

  • The system must support two different high-level languages "using a modular compilation system including multiple front-end compilers";
  • The "first high-level language" must be "a C language based object-oriented programming language".

Claims 1, 11, and 22 each further require that the "second high-level language includ[es] object-oriented elements and procedural elements" and "include a data type... to indicate absence of a value of any type".

Claim 16 does not have those limitations, but instead requires that the compiler for the second high-level language "includes performing one or more compile-time type safety operations in conjunction with one or more type inference operations".

Please note that if a given system doesn't fit all of the limitations of at least one claim, it's not infringing, but on the flipside it wouldn't generally count as prior art if it predates the patent. (A patent can be invalidated if the claims are "obvious" given a combination of multiple pieces of prior art, but the legal standard is hard to meet; it has to be very obvious.)

In short, this is mainly a patent on supporting multiple languages in the same compiler, with various specific limitations. One of those limitations is that one of the languages in question must have an optional type. As for chaining, although the description mentions optional chaining, I don't see anything in the claims that mentions it at all (although they're wordy enough that I might have missed something). But in any case it is not a patent on optional types and it is not a patent on optional chaining.

It is, on the other hand, a patent that would presumably be infringed by an independent implementation of the Swift compiler, assuming it included Objective-C compatibility. And it would be infringed if another language wanted to add a similar built-in compatibility layer. For the same reason, if you want to find prior art, that's the kind of functionality you're going to have to look for.

10 Likes