Forum > Other
PRNG - the license of Thaddy's code from wiki
Zoran:
I'm considering Thaddy's Mersenne twister 32-bit implementation, published in our wiki.
For my needs I would modify the code, change class functions and class varibles to ordinary object methods and variables. For thread-safety, I want to be able to create a separate instance for each thread.
In main thread there will be one instance, seeded with GetTickCount(), and when creating threads, this instance will be used to provide seed for instances owned by threads.
But there I don't see any mention of the licensing of the code. Am I allowed to use it (and change it) in my code? Are there restrictions with licensing the applications which use it?
So, what is the license?
Thaddy?
Kays:
According to https://wiki.FreePascal.org/Free_Pascal_wiki:Copyrights all rights are reserved except other wiki editors may edit your text (i. e. an infringement to the creator’s personality rights is OK).
ccrause:
--- Quote from: Zoran on January 17, 2024, 04:18:14 pm ---So, what is the license?
Thaddy?
--- End quote ---
Maybe send a PM to Thaddy with a link to this topic.
Zoran:
--- Quote from: Kays on January 18, 2024, 07:45:08 pm ---According to https://wiki.FreePascal.org/Free_Pascal_wiki:Copyrights all rights are reserved except other wiki editors may edit your text (i. e. an infringement to the creator’s personality rights is OK).
--- End quote ---
Thank you for the link. If I understand correctly, it says we are allowed to change the code in the wiki (which I don't intend to, it is well written), but not use it (changed or not) without the permission from the author.
So it seems that, when contributing code to wiki, one should also write there what the license is.
--- Quote from: ccrause on January 19, 2024, 06:27:11 am ---Maybe send a PM to Thaddy with a link to this topic.
--- End quote ---
Thanks. Now I sent private message to Thaddy.
Thaddy:
I received the private message but decided to answer in public.
Regarding the Mersenne Twister itself, basically we have two, both written from scratch:
- The original FreePascal code written by Jonas Maebe and released under the usual gpl2 + linker exception and until recently the standard FPC PRNG.
- My version, released under a nothing license, free as in free beer, as far as licensing is concerned. Basically written to have Delphi inter-op with FPC generated data..... (I also wrote it the other way around: Delphi's LCG for FPC)
The difference does not matter too much and only concerns code written in Pascal.
Then there is the matter of copyright claims:
The algorithm itself is still under copyright, but free to use and it is also a part of e.g. the current C - and derivatives -standard. Since it is included in many standards without references to any copyrights you may consider at least my version license free. And I wave my copyrights for such simple code. Just do not claim the code is yours... (ethics rather than anything else)
Note that, given the same random seed, both FPC versions behave exactly the same. It even behaves the same compared to other compiled languages like C and C++.
It is nothing more than implementing a mathematical abstract theory in concrete code.
Navigation
[0] Message Index
[#] Next page