

UK High Court Finds Programming Languages Uncopyrightable - ig1
http://www.bailii.org/ew/cases/EWHC/Ch/2013/69.html

======
petercooper
Much of the judgment and case was based around the copyright violation of SAS
_manuals_ (which the defendant admitted do enjoy copyright) rather than the
language per se, so it takes some digging to find the wheat amongst the chaff.

The guts of the "are programming languages copyrightable" question start a
long way down. Link:
<http://www.bailii.org/ew/cases/EWHC/Ch/2013/69.html#para17> .. particularly
from point 27 onward where it is stated a computer _program_ is a literary
work but a language is not (para 33).

Indeed, para 33 is the real crux, so I'll reproduce the core of it for anyone
without the time to dig around:

 _[..] my provisional view is that a programming language such as the SAS
Language is not capable of being a work. A dictionary and a grammar are works
which describe a language. Such works record, and thereby fix, the elements of
the language they describe: the meanings of its words and its syntax. It does
not follow that the language is a work. Rather, the language is the material
from which works (including dictionaries and grammars) may be created. The
evolutionary or organic aspect of language can be left on one side for the
moment, since it is clear that it is possible to create a language from
scratch. Even when a language is created from scratch, however, what it
amounts to is a system of rules for the generation and recognition of
meaningful statements. Programming languages such as the SAS Language are no
different in this respect._

Maybe someone could correct me here but my interpretation is that the judge
does not _really_ decide whether or not a) a programming language is capable
of being a "work" and b) SAS Language is a work, since they are not relevant
to the remainder of the case. Indeed, he merely gives the above as his
"provisional" view which leaves the gate somewhat open and no precedent set by
this specific case.

~~~
Osmium
From the language you quoted above it sounds to my un-trained ear like he's
comparing a programming language to a natural language.

I wonder how many of our problems are due to deciding to call them
"programming languages" rather than something like "programming notation"
instead? There seems to be a conceptual problem, especially among people who
don't program, as to just what a programming language actually is.

~~~
webreac
The programming language is the language used to give instructions to a
machine. For me, it is very similar to a natural language. What do you mean by
"programming notation" ?

~~~
Osmium
For me, a programming language is closer to mathematical notation than it is
to a natural language that people use to communicate with each other. It's
rigorous, logical, and typically the product of one entity rather than a
natural language which is the product of everyone who uses it.

To put it another way, since the quote mentioned this, I don't think it's fair
to compare a dictionary for a natural language to a dictionary for a computer
language, because they're quite different things. One records and documents a
process already happening [language evolution], while another _is_ the process
itself [language creation].

Just a personal opinion, that's all -- I just think analogies can be stretched
too far, and by calling computer languages "languages" I think it's backed the
discourse about them into a corner a little bit. Which is not to say all
comparisons between computer language and "normal" languages are wrong, just
that they're not really appropriate in this instance when discussing
copypwritability.

~~~
Colliwinks
What is meant by a 'language' is actually fairly well defined mathematically:
That is something that can be described by a number of grammars. These in turn
can be categorised (see the Chomsky Hierarchy:
<http://en.wikipedia.org/wiki/Chomsky_hierarchy>)

In that sense, programming languages, regular expressions, and natural
language can all be identified by what types of grammar can define them.

------
jgeralnik
_[..] to accept that the functionality of a computer program can be protected
by copyright would amount to making it possible to monopolise ideas, to the
detriment of technological progress and industrial development._

How are patents justified if the law recognizes that monopolizing ideas is
bad?

~~~
ig1
Patents protect implementation of ideas; not ideas per-se.

~~~
Cushman
That's not totally true; in the case of software, an implementation is code,
which is copyrightable. The idea, the functioning of the code, is not
copyrightable, but it may be patentable, because a patent is a more restricted
protection on a more abstract idea.

~~~
chii
patents protect inventions, not ideas. For physical object, this is easily
discerned, but sometimes, it gets muddy when talking about a protocol, or some
sort of algorithm. I dislike software patents, but the intention of patents
isn't to protect an abstract idea (whether its been twisted to do so is
another argument for another day...)

~~~
Cushman
But an invention is obviously a kind of idea. Patents and copyright both
protect kinds of ideas; that's why we call them _intellectual_ property.

------
runarb
The European Court of Justice also ruled on this in may 2012:
[http://www.computerworld.com/s/article/9226783/Programming_l...](http://www.computerworld.com/s/article/9226783/Programming_languages_can_t_have_copyright_protection_EU_court_rules)

~~~
SEMW
For anyone who doesn't realise: That's part of the same case. National courts
refer questions about interpretations of EU directives to the CJEU. They give
guidance on interpretation, but don't rule on the specifics of the case. So
after they do that the case goes back back to the national court for judgment
on the actual case, which is what's just happened.

------
jug6ernaut
I am no lawyer...could someone distill this for me? What does this mean if
anything to your avg programmer?

~~~
oneandoneis2
AIUI, basically it means that whilst a program written in, say, python, can
itself by copyrightable; the python language itself can't be. This means you,
or anyone else, can implement your own python interpreter without any fear of
being accused of copyright infringment.

~~~
nopassrecover
Seems like you could extend this same argument to file by arguing you are
writing an interpreter for the PDF/GIF/AutoCAD/PSD notation.

~~~
petercooper
From the point of defending against copyright violation, you can. However,
_patents_ and _reverse engineering_ laws present separate barriers you could
need to jump over (although this is no longer a problem for at least 3 of the
4 formats you mention, I believe).

~~~
nopassrecover
Good point (and yeah I picked poor examples).

------
Zenst
So does this all mean we can get a java VM that is not subject to Oracles
whims? I guessing not.

