Comment by xyzzy_plugh

Comment by xyzzy_plugh a year ago

4 replies

"I read this code and then reimplemented it from scratch in a different language" does not release you from licensing obligations. If that were the case then brb while I go reimplement unreal engine in rust.

PaulDavisThe1st a year ago

You absolutely can do that.

And yes, it does release you from licensing obligations (unless the license included specific clauses).

  • xyzzy_plugh a year ago

    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.

    • PaulDavisThe1st a year ago

      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 :)

      • xyzzy_plugh a year ago

        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.