views:

141

answers:

4
  • I know that softwares can be copyrighted, and then you cannot copy them (as in copy the source), so you need to buy them. For example - Microsoft Visual Studio is a copyrighted IDE. But, that doesn't make C++, for example copyrighted. So, Microsoft does not own C++. Anybody can a) use C++, b) write compilers for C++, and c) sell applications written in C++ commercially.

  • Things are different with { C# and Microsoft } and { Java and Oracle/Sun }. These two are in some ways owned by these companies. The latter one has recently led to a dispute between Oracle and Google.

  • Some of the languages like C++ are so essential that copyrighting them makes no sense for the programming community as a whole. On the other hand, I should be able to build and use a personal programming language, if I desire to do so (Sawzall falls into this category. Does a personal programming language boil down to not making the language grammar public?).

What are the different ways in which a language can be "owned"?

A: 

They can be patented in united states.

Pierre 303
I am not 100% sure but probably it's possible in Japan also
mirnazim
And what happens if a language is patented in the US and I use it in another country?
nico
You can, but you won't be able to enter the US market.
Pierre 303
Oh and they are also international treaties. I think you should be able to invade Cayman Island market easily :)
Pierre 303
But the US patent system is screwed, especially in relation to software and applications of algorithmns. Good luck trying to navigate that quagmire, you would need deep pockets to pay the lawyers to guard your patent.
slugster
You are right slugster. But the ones that create programming languages have the plenty money and lawyers you are talking about :)
Pierre 303
I would think there are many more open-source languages than corporate-owned languages, so the people who create programming languages generally *don't* have the deep pockets and the lawyers.
Joe White
+1  A: 

For an interesting and very contemporary test of some of your questions, check out the SAS vs. WPS case here, particularly paragraphs 149 onwards. The context for answering your questions would vary by jurisdiction, and also be relevant to the extent that legal action would be, or would be likely to be, pursued.

sasfrog
+1  A: 

In a way, yes, but difficult. Usually, what is patented are patents (duh) as in ideas, as in new ways to do something using the so far known technology (cannot remember the exact definition now, to what can legally be patented, but it is relatively easy to find in most economics books that deal with intellectual property law).

Now, with programming languages that cause a few problems. First, most programming languages are "the same", as in most of them have the same constructs, same philosophy, and that makes it rather hard to invent something that wasn't seen before. Second, in relation to first, as for example, with C++ you mentioned, you must prove that it is indeed a new idea/way you're trying to protect. Which will be hard, since most of those ideas are based on old cognitions and because of that they will be argued, and in the end refused by the office (what does C++ have that you haven't seen before). And third, if I remember correctly, you cannot protect what is known (and there is a better translation, I'm sure of this, from my language to english) as common knowledge. For example the alphabet, colours, and so on.

Also, keep in mind, that different countries have different (vastly different) patent laws, and that also makes arguable whether it is worth the trouble.

Software is much easier to protect in that manner, for you are protecting a physical thing.

p.s. I might have putted this a bit vague, but it is hard for me to explain it much clearer without practical examples.

ldigas
+2  A: 

I think you're confused.

A copyright is a bunch of rights granted to the author of an original work. They often include the right to be identified as an author, the right to distribute, the right to copy etc.

A copyright is owned on a tangible thing. A work of literature or software is an example. A copyright cannot be granted to an idea. So, you cannot copyright your plan to automatically translate one programming language to another but you can copyright your program that does it.

Now, once a piece of software is copyrighted, the author has the right to decide how it can be distributed, sold or otherwise made available. This is done using a license and is something distinct from a copyright. Your first example where you mention MS-Visual studio is errant because of this. The IDE cannot be copied not because the copyright owner is Microsoft. It cannot be copied because it's licensed under the Microsoft VS EULA (End user license agreement) that prevents you from doing so. It's something like saying - "I own this piece of software (Copyright) and so I can decide how you may use it (rights). I am letting you use it on a single machine etc. (license). If you agree, click 'Next'".

The Java/Dalvik scenario is different because it involves patent infringement. This is a different beast. A patent is different from a copyright. It's something that is conferred upon an "idea" (as opposed to a copyright which is for some tangible thing). The rights one gets by being a patent owner are different than the ones with a copyright ownership. Let's say that I own the copyright for a novel I wrote. If you write the exactly same novel but can prove that you didn't copy it from mine and that it was completely original, you haven't violated any of my rights. With patents thought, if I've patented an idea, it's mine. Even if you come up with it an implement it independently after I was granted the patent, I can still sue you for patent infringement. In the Google/Oracle scenario, Oracle is suing Google for infringing upon a bunch of patents which cover parts of the JVM. They're fairly involved and discuss things like optimisation methods etc. This is not copyright law. It's patent law.

C++ is an idea. You can copyright the grammar document which you wrote. You can copyright the reference manual which you wrote. You can copyright programs you write in it. You can copyright the source code of the compiler. You can patent ideas you had for C++ (e.g. friend functions although I'm sure that'll be overthrown). You cannot "copyright" C++. It simply doesn't make sense. The g++ compiler's copyright is owned by the Free Software Foundation and it's released under the GNU GPL. Microsofts Visual Studio compiler is copyrighted by the corporation and the license in a proprietary EULA.

Your "personal" programming languages copyright would be owned by you and you're free to distribute your interpreter, compiler or other parts of it's toolchain under any license you want. You can put all sorts of rules for your language. e.g. I can make an alternate implementation but can't call it by the same name as yours etc. Releasing the grammar is just a small thing in the entire picture.

Noufal Ibrahim
"The IDE cannot be copied not because the copyright owner is Microsoft... [but] because it's licensed under the Microsoft VS EULA." You've got it backwards. MS owns the copyright, which is the *right* to decide how a work may be *copied*. You may not copy a work unless the copyright owner gives you permission. The license is how they give you permission. Without a license, you couldn't legally install VS on your computer, because that would involve copying. But the license is what *gives* you permission to copy it; copyright is what takes that permission away (except as otherwise specified).
Joe White
Yes. That's what I meant. I guess all the legalese made me trip over. My point was that the specifics of how (and if) you may use/copy the software are dictated by the license rather than by the fact that it's copyrighted. The ability to put the software under a specific license is of course possible only because Microsoft owns the copyright.
Noufal Ibrahim