copyright software
I have rewritten the library in a different language than the original. If I publish it under my name do I infringe the copyright law?
<p>So let's assume that there exists programming library Lib1 made with language Lang1. If I rewrite this library in language Lang2 and expand with additional features (or scrap few existing), name it MyLib and then release under different license and take copyright to myself (only for MyLib)  do I infringe the copyright law?</p>

<p>The answer to this depends very much in which country you are in, and how you go about implementing it.</p>

<p>First of all, this might seem obvious, but copyright only applies if you copy something that is covered under copyright.</p>

<p>If you copy an idea - that having a library that solves problem X is useful - and that is the only aspect you copy, then under U.K. Copyright law, there is no copyright infringement, as ideas are not copyrighted.</p>

<p>However, if you copy aspects of the library interface, or the object model of the original library, then it's a derived work, and the copyright of the new work is only partly yours.</p>

<p>If you translate the source into a new language, then the copyright is largely still with the original author.</p>

<p>Every country implements copyright law in their own way. One of the principle differences are in the available "fair use" clauses. You may find that you are entitled to a fair use clause for creating a "compatible" library, or you may be allowed to quote small aspects of the original in your new work.</p>

<p>You need to check up on your countries laws.</p>

<p>One thing not touched on in other answers: publishing it is irrelevant for copyright infringement. Copying is the infringement (hence <strong>copy</strong>right) even if you keep the copy in a bottom drawer and never use it or look at it again.</p>

<p>Of course, if you thar your chance of being sued is vanishingly small and even if you were you would have an excellent chance at succeeding in a fair use/dealing defence.</p>
