decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
Package names, method names, not creative | 219 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
Package names, method names, not creative
Authored by: frederik on Thursday, February 14 2013 @ 06:19 PM EST
This could be from an Interface or method declaration:
public abstract void verify(PublicKey key, String sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException, SignatureException
If I wanted to implement this in a compatible way, my creative freedom in the declaration would be:
  • key - I could name it something else. It is a key, so calling it key makes most sense. It is called key in the controlling interface, so calling it anything else, while possible, would confuse.
  • sigProvider - it is a signature provider. I could call it "string", but that would be confusing. I could call it signatureProvider, but see above.
  • If this is an interface, I could leave out the abstract. If it is a cmopatible method, the abstract would be required.
  • I could change the order in which the exceptions are listed.
Everything else is required to make it work. Thus, this is almost only function and even for the little that could be expression, function (compatibility with what using developers know/remember) in practice dictates.

public abstract class DatagramChannel extends AbstractSelectableChannel implements ByteChannel, ScatteringByteChannel, GatheringByteChannel {
This defines a class that is abstract, i.e. it is meant for sub-classing and there are some methods not implemented. It is accessible from outside the package (public). It is called DatagramChannel, a name that needs to remain to make programs that use it work. It extends a class AbstractSelectableChannel. Nothing changeable. It implements a list of 3 interfaces (ByteChannel, ScatteringByteChannel, GatheringByteChannnel), which it must do to work. The names of these interfaces are given.

The only room for "expression" is that the order (not the names!) of the implemented interface names could be changed. It is obvious to list ByteChannel first, since the other two are indirect subinterfaces thereof. Changing the order would not accomplish anything other than confuse.

Thus, here as well, there is no space for expression and creativity. The entire text is dictated by function.

In general, any implementation of any part of java SHOULD use the exact (verbatim) same class declarations, interface declarations and method declarations. Furthermore, they MUST be identical, except for a few possible variations as exemplified above.

[ Reply to This | Parent | # ]

Package names, method names, not creative
Authored by: frederik on Thursday, February 14 2013 @ 06:42 PM EST
Ann Droid writes a book. To tell her story, she uses letters strung together into words, words strung together into sentences. Readers find her story useful.

  • Ann is sued by Big Bird for copying the letters "A" and "a".
  • Ann is sued by J.K. Rowling for copying the word "wizard". Clearly, it is not an accident that the letters are combined just so. Ann could have used "magician" to express the same concept. "Wizard" appears multiple times in J.K. Rowling's copyrighted works. Furthermore, the "wizard" uses a "wand" to cast "spells".
  • Ann is sued by Company for titling the first chapter "Foreword", the second chapter "Introduction" and the last chapter "Acknowledgement". To show how pervasive copying is, Company also points to the plagiarism of "Once upon a time, there was", "I wish to thank", "too numerous to count", "Similarity to any characters, real or imagined" , "solely the responsibility of the author". All these are verbatim copies of text from Company's copyrighted works.
  • Ann is sued in several separate actions in the United States District Court for the Eastern District of Texas for preparing the text "with a computer", for printing on both sides of the paper an for using the word "troll".

[ Reply to This | Parent | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )