View Single Post
Old November 29, 2014, 20:29   #3
AnonymousHero's Avatar
Join Date: Jun 2007
Posts: 1,372
AnonymousHero is on a distinguished road
Originally Posted by Therem Harth View Post
Because I've got a nasty head cold, and feel like working on something other than Neoband right now... (I'll probably get that release out tomorrow, probably!)

If I wanted to embark on a naive attempt to port a pre-GPL variant to another programming language, using the original source code as a basis and reference, including some of the initial structure/object layout of the code; would the theoretical complete product also have to be under the original Angband license? Or can ported versions just be GPLed?
I kind of agree with Magnate about the practical issues, but you should probably look up the process of Clean room design to get a handle on how seriously some people take this kind of thing.

Ignoring the practical side, you definitely cannot just copy & paste code and then adapt it to $NEW_LANGUAGE without running afoul of copyright law (if there's someone interested in pursuing a copyright claim). One way to accomplish what you want and which has been done in practice (I believe) is to somehow establish an API between the new code and old code and to rewrite every bit of old code (without copy/paste!) in $NEW_LANG using the API. This is a sort of less formalized version of the "Clean room" approach, and should be sufficient for all practical purposes. It's still a lot of effort though.

Summary: If you really want a different license, it's probably easiest to just do a full rewrite without looking at the original code and copying the overall design.

EDIT: Obviously, IANAL and this is not legal advice!
AnonymousHero is offline   Reply With Quote