Can programming language names be trademarks?

By Pamela Chestek

Establishing a brand identity for a proprietary programming language is a long process which often begins by obtaining some form of legal protection.

Can – or should – a programming language name be a trademark? The Trademark Trial and Appeal Board, the administrative board within the U.S. Patent and Trademark Office that adjudicates whether trademarks can be registered, recently decided that the word “Lua” was not a generic name for a programming language, but rather that the term referred to a particular proprietary language. Is it right though, that someone is allowed to exercise proprietary rights over a programming language name?

A word is only a trademark if the consumer recognizes it as one. We all know the litany of former trademarks that aren’t trademarks anymore because people used the words to identify a type of goods, not a particular manufacturer’s brand: aspirin (in the U.S.), shredded wheat, cellophane, escalator, and thermos are a few examples.

So do people think of the names of programming languages as trademarks? For some programming languages, there is clearly no single entity that claims ownership. Fortran, Ada, C, C++, Extended Pascal, and Basic are all defined by ISO standards and no one owns the names; they’re just generic. Based on past experience, as users we may not be predisposed to think of a language name as proprietary.

But there are also a fair number of trademark registrations for computer language names, like for Javascript, Java, Python and Perl. But these aren’t registrations for language names per se; rather, the registrations claim computer programs related in some way to a language, like this example for Python: “computer programs and downloadable computer programs that implement an object-oriented computer programming language.” The absence of registrations for programming languages per se is perhaps on the theory that a language is neither a good or a service that can be used in trade, but rather an abstraction. Instead, a program that assists in programming in a given language, like an IDE, or a book that describes the language, are the tangible goods that can be distributed and therefore have a trademark.

There are more indications that a language name is simply not a trademark. The USPTO says that in a trademark registration, one may only use generic words to describe the goods and services – it is “inappropriate” to use a trademark in the description and the examining attorney should instruct the applicant to change the trademark to a generic word. Nevertheless, a number of registrations contain the trademarks “Java” or “Perl” in the description of goods and services, e.g., “M Squared Technologies” is a long-standing registration for “computer software development tools that assist the software developer to create and understand software programs written in the computer programming languages of C, C++, Java, C#, Fortran, Pascal, Assembler, XML, HTML, and variants of Basic”. This uses the “Java” registered trademark right alongside the generic names for other languages. “J2U” is registered for “conversion of software into Practical Extraction and Report Language (PERL), korn shell (KSH) or Bourne-Again Shell (BASH) command language interpreter,” using the Perl registered trademark. This certainly suggest that at least the trademark examining attorneys aren’t recognizing these words are trademarks. Another example: when Microsoft filed its application for Visual C#, it disclaimed the “exclusive right to use C# apart from the mark as shown.” Microsoft isn’t claiming any exclusive rights to the name C#.

Does it really matter though? And isn’t it fair that the entity that controls the standard for the language be allowed to say what is authentic $LANGUAGE and what isn’t?

It does matter. No one should be able to use trademark law to control truthful speech about a product. The Examining Attorney in the Lua application raised this point, but it wasn’t a good enough sell for the TTAB. Indeed there is a legal theory – nominative fair use – that says one can use others’ trademarks to refer truthfully to the others’ products, but this is a judge-made doctrine, not statutory, of varying parameters in different courts, and not even accepted by all of them. Given the unsettled law, one can see that an aggressive trademark enforcer could exploit the situation to try to suppress use of the programming language itself.

About the author

Pamela Chestek
Pamela Chestek is the principal of Chestek Legal in Raleigh, North Carolina. She practices in trademark, copyright, open source, advertising and marketing law. She has worked in both law firm and in-house environments serving a variety of fields – footwear and apparel, software, design, retail, and manufacturing are a few. She often works with creative communities, giving practical legal advice on branding, marketing, and protecting and sharing content. Pamela has authored several scholarly articles and was formerly an adjunct professor at Western New England College School of Law. She may be contacted at pamela[at]