That's the functional aspect, though. When I declare "double sin( double
value);", I'm making a purely functional statement of facts: "This function is
named "sin". It accepts a single argument of type double, and returns a single
result of type double. The result will be the sine of the argument value.". That
text I just wrote may be copyrighted, but the facts it states and the functional
aspects are not. I can declare that function without infringing on your
copyright. And to declare it, I have no choice but to write that declaration
almost exactly the same way because of the rules of the C/C++ language, common
formatting practices and common sense.
We see this in stories. If you're
writing a pulp detective novel, there are stock elements and characterizations
that you'll use because they're expected in that type of novel, and you'll do
them almost exactly the same as every other pulp detective novel because
they're expected to be that way. That my novel uses those same elements in the
same way as yours doesn't mean I'm infringing on your copyright, because you
don't have a copyright in stock elements.
Now, the body of your sin()
function, that's another matter. That could be copyrighted, if you've got
code in there that's unique and creative and not merely a standard
implementation cribbed from elsewhere (very few sin() functions are actually
creative, most are just a restatement of the most efficient method derived over
the years for doing that calculation and the only variation is in a few comments
(even the formatting's usually "whatever the format-file function in my editor
spits out, very few programmers hand-format their code in any unique way)). [ Reply to This | Parent | # ]
|