Comment by PaulDavisThe1st
Comment by PaulDavisThe1st a year ago
You absolutely can do that.
And yes, it does release you from licensing obligations (unless the license included specific clauses).
Comment by PaulDavisThe1st a year ago
You absolutely can do that.
And yes, it does release you from licensing obligations (unless the license included specific clauses).
You cannot copyright algorithms. Ergo, the expression of an algorithm in one language is not a copyright violation of an expression of the same algorithm in a different language.
Of course, there's a gray zone: what about a reimplementation in the same language, but with different variable names? Those cases are why we have courts.
But ... if you figure out how to solve Rathbone's conjecture[0] and reveal the source code for it in C++, my reimplementation of that in Rust or Lua does not constitute a derivative work.
One exception would be if you managed to patent some feature of the algorithm (RSA comes to mind, or frequency-based colors for drawing waveforms). That's a different story.
[0] invented :)
To be clear the origin of the derivative work is not the reimplementation of the algorithm but instead the fact that the copyrightable atom of work can be considered a variant with insufficient originality because you are familiar with the source material. If you were able to claim and prove ignorance of the source material then there is less of an argument to be made, but that's not what we're discussing, to be clear.
Your advice is dangerous. Consult an attorney.
You should consult a lawyer. It's one thing if it's a clean-room implementation but every IP attorney I have ever interacted with would disagree with you.
It doesn't take much for a court to consider something a derivative work.