www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - License of RosettaCode examples (for bearophile:-)

reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
This message is especially for bearophile, but applies to anyone posting 
examples on RosettaCode :-)

Can I ask you to clarify your licensing intentions for these examples?  By 
default all on RosettaCode is GNU Free Documentation License, which does not 
really play in a friendly way with ... just about any actual software license.

I imagine that all these examples were posted with the intention that they be 
used by others, but the default RosettaCode situation makes that impossible 
without direct permission.  So ... I'm asking. :-)

Thanks & best wishes,

     -- Joe
Sep 17 2013
next sibling parent reply "Iain Buclaw" <ibuclaw ubuntu.com> writes:
On Tuesday, 17 September 2013 at 11:04:13 UTC, Joseph Rushton 
Wakeling wrote:
 This message is especially for bearophile, but applies to 
 anyone posting examples on RosettaCode :-)

 Can I ask you to clarify your licensing intentions for these 
 examples?  By default all on RosettaCode is GNU Free 
 Documentation License, which does not really play in a friendly 
 way with ... just about any actual software license.

 I imagine that all these examples were posted with the 
 intention that they be used by others, but the default 
 RosettaCode situation makes that impossible without direct 
 permission.  So ... I'm asking. :-)
An example of what the situation is using GNU FDL - last time I checked material under the GNU FDL could not be put into GPL code and GPL code could not be put into a GNU FDL manual. So watch out! :-) Regards Iain.
Sep 17 2013
parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 17/09/13 13:17, Iain Buclaw wrote:
 An example of what the situation is using GNU FDL - last time I checked
material
 under the GNU FDL could not be put into GPL code and GPL code could not be put
 into a GNU FDL manual.  So watch out! :-)
Indeed. An unfortunate situation, no?
Sep 17 2013
prev sibling parent reply "bearophile" <bearophileHUGS lycos.com> writes:
Joseph Rushton Wakeling:

 This message is especially for bearophile, but applies to 
 anyone posting examples on RosettaCode :-)

 Can I ask you to clarify your licensing intentions for these 
 examples?  By default all on RosettaCode is GNU Free 
 Documentation License, which does not really play in a friendly 
 way with ... just about any actual software license.
I am just following the common licensing you see in that site: http://www.gnu.org/licenses/fdl-1.2.html Recently the author of most of the PicoLisp entries has collected them in a commercial book, this has caused some troubles. If you want info about Rosettacode licensing I suggest you go in the rosettacode IRC channel and talk with Mike Mol about it. Bye, bearophile
Sep 17 2013
parent reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 17/09/13 13:32, bearophile wrote:
 I am just following the common licensing you see in that site:
 http://www.gnu.org/licenses/fdl-1.2.html

 Recently the author of most of the PicoLisp entries has collected them in a
 commercial book, this has caused some troubles.

 If you want info about Rosettacode licensing I suggest you go in the
rosettacode
 IRC channel and talk with Mike Mol about it.
Would you be prepared to license your own examples under Boost? I don't know what your intentions were for others' use of your code, but as it stands the FDL license makes them impossible to re-use.
Sep 17 2013
parent reply "bearophile" <bearophileHUGS lycos.com> writes:
Joseph Rushton Wakeling:

 Would you be prepared to license your own examples under Boost?
  I don't know what your intentions were for others' use of your 
 code, but as it stands the FDL license makes them impossible to 
 re-use.
I am writing code for Rosettacode since years, I have written, rewritten, I have modified code written by others, and so on. I have also written many entries before having an account in that site, so there's no proof the author is me. I have also written many entries in Python, several in Haskell and C, some in C++, etc. While there are several entries that are written only by me, finding them is not easy. I didn't care about the owners of the code there. So I own nothing there. For re-use ask to Mike Mol. Bye, bearophile
Sep 17 2013
parent reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 17/09/13 14:03, bearophile wrote:
 I am writing code for Rosettacode since years, I have written, rewritten, I
have
 modified code written by others, and so on. I have also written many entries
 before having an account in that site, so there's no proof the author is me. I
 have also written many entries in Python, several in Haskell and C, some in
C++,
 etc. While there are several entries that are written only by me, finding them
 is not easy. I didn't care about the owners of the code there. So I own nothing
 there. For re-use ask to Mike Mol.
I have a specific interest in your circular queue implementation: http://rosettacode.org/wiki/Queue/Usage#Faster_Version I used this (or rather, I adapted it) in a private project which is not being distributed, so hence there were no licensing issues. I can't remember how I found it but I think it was when you posted it to the digitalmars.D mailing list: http://forum.dlang.org/post/grepielsmapflndpkmtk forum.dlang.org ... and at the time I think I just assumed that since you were pointing people to it and were the author, you'd licensed it permissively. However, more recently I rather stupidly copied my adapted version into a public project of mine, and I suddenly realized the licensing situation. In the worst case scenario, I'll strip it out of the code, but I was hoping that you might be willing to license this specific code under Boost or something else GPL-compatible.
Sep 17 2013
parent reply "bearophile" <bearophileHUGS lycos.com> writes:
Joseph Rushton Wakeling:

 I have a specific interest in your circular queue 
 implementation:
 http://rosettacode.org/wiki/Queue/Usage#Faster_Version
If you restrict your desires to just one D program, instead of the about one thousand of Rosettacode the situation becomes _much_ simpler :-) I wrote that D code myself because Phobos still lacks a queue, but the original idea of growable circular queues is decades old. For Phobos I suggest a different and more complex implementation (dynamic array of pointers to freelist-linked fixed sized chunks).
 However, more recently I rather stupidly copied my adapted 
 version into a public project of mine, and I suddenly realized 
 the licensing situation.

 In the worst case scenario, I'll strip it out of the code, but 
 I was hoping that you might be willing to license this specific 
 code under Boost or something else GPL-compatible.
I have put that code only on Rosettacode, and in an archive in my site. I am willing to release it to public domain if you want :-) But what do you want me exactly to do? :-) Bye, bearophile
Sep 17 2013
parent reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 17/09/13 15:18, bearophile wrote:
 Joseph Rushton Wakeling:

 I have a specific interest in your circular queue implementation:
 http://rosettacode.org/wiki/Queue/Usage#Faster_Version
If you restrict your desires to just one D program, instead of the about one thousand of Rosettacode the situation becomes _much_ simpler :-)
Very true. :-) I'm sorry for not being sufficiently specific straight away, but I thought the general question might be of interest. I did try and write you a personal email about the specific code earlier today, before even writing to the list, but your given email address doesn't work. I take it that I need to make some manual tweaks to what appears in the Reply: field ... ?
 I wrote that D code myself because Phobos still lacks a queue,
 but the original idea of growable circular queues is decades old.
 For Phobos I suggest a different and more complex implementation
 (dynamic array of pointers to freelist-linked fixed sized chunks).
I made use of it ... because Phobos still lacks a queue. :-P And I'll surely use Phobos' queue in its place once that is implemented.
 I have put that code only on Rosettacode, and in an archive in my
 site. I am willing to release it to public domain if you want :-)
 But what do you want me exactly to do? :-)
Well, I guess the best thing would be just to write here, "I license the code under the terms of the Boost license" or something similar (public domain is in some ways less good because not every jurisdiction recognizes it, but as far as I'm concerned it's fine too). I'm just looking for something that I can reference to say the code is used under these terms. If you could add such a notice to the copy on your own site and on RosettaCode it would be even better because that means that it's then clear to everyone what the use terms of the code are (I think RosettaCode allows you to add more permissive licenses to your code submissions, no?). But that's up to you. An explicit permission here is all I'm really looking for. Whatever you decide, thanks very much for being so understanding and accommodating. I'm very embarrassed about this, it is very unlike me to neglect code licensing in this way. :-( Thanks & best wishes, -- Joe
Sep 17 2013
parent reply "bearophile" <bearophileHUGS lycos.com> writes:
Joseph Rushton Wakeling:

 Well, I guess the best thing would be just to write here, "I 
 license the code under the terms of the Boost license" or 
 something similar (public domain is in some ways less good 
 because not every jurisdiction recognizes it, but as far as I'm 
 concerned it's fine too).  I'm just looking for something that 
 I can reference to say the code is used under these terms.
I license the D program "Queue/Usage" (Faster Version) of the RosettaCode site under the terms of the Boost license. It implements in D2 a simple Circlular Queue able to grow geometrically. The code is visible in this page: http://rosettacode.org/wiki/Queue/Usage#Faster_Version
 If you could add such a notice to the copy on your own site and 
 on RosettaCode it would be even better
Nearly all Rosettacode site entries (and all D entries) lack a license notice. It's just bad noise added. For questions ask to Mike in the #rosettacode IRC channel. Bye, bearophile
Sep 17 2013
next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 17/09/13 16:27, bearophile wrote:
 Joseph Rushton Wakeling:

 Well, I guess the best thing would be just to write here, "I license the code
 under the terms of the Boost license" or something similar (public domain is
 in some ways less good because not every jurisdiction recognizes it, but as
 far as I'm concerned it's fine too).  I'm just looking for something that I
 can reference to say the code is used under these terms.
I license the D program "Queue/Usage" (Faster Version) of the RosettaCode site under the terms of the Boost license. It implements in D2 a simple Circlular Queue able to grow geometrically. The code is visible in this page: http://rosettacode.org/wiki/Queue/Usage#Faster_Version
Thank you very much. I really appreciate this.
 If you could add such a notice to the copy on your own site and on RosettaCode
 it would be even better
Nearly all Rosettacode site entries (and all D entries) lack a license notice. It's just bad noise added. For questions ask to Mike in the #rosettacode IRC channel.
Ahh, I think I misunderstood some of the RosettaCode documentation which had something along the lines of "Unless the code comes with a different license attached ..." According to their Copyright page, it's advised to place license notices on your RosettaCode user page if you want to use something apart from the GNU FDL: http://rosettacode.org/wiki/Rosetta_Code:Copyrights#Contributors
Sep 18 2013
prev sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 18/09/13 11:55, Joseph Rushton Wakeling wrote:
 On 17/09/13 16:27, bearophile wrote:
 Joseph Rushton Wakeling:

 Well, I guess the best thing would be just to write here, "I license the code
 under the terms of the Boost license" or something similar (public domain is
 in some ways less good because not every jurisdiction recognizes it, but as
 far as I'm concerned it's fine too).  I'm just looking for something that I
 can reference to say the code is used under these terms.
I license the D program "Queue/Usage" (Faster Version) of the RosettaCode site under the terms of the Boost license. It implements in D2 a simple Circlular Queue able to grow geometrically. The code is visible in this page: http://rosettacode.org/wiki/Queue/Usage#Faster_Version
Thank you very much. I really appreciate this.
I've added a Ddoc comment to the Dgraph codebase to reflect the origins of the code and your kind license grant: https://github.com/WebDrake/Dgraph/commit/315286b9717e3d078029d77d0972800cbbd7dc42 Let me know if there's anything about that you'd like tweaked. I can also offer a link to your homepage, for example :-)
Sep 18 2013