From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Jeffrey R. Carter" Newsgroups: comp.lang.ada Subject: Re: Mixing Ada code with similar licenses Date: Sun, 26 Mar 2017 23:24:05 +0200 Organization: Also freenews.netfront.net; news.tornevall.net; news.eternal-september.org Message-ID: References: <86633a07-9a12-4419-ad09-b519e4f279a5@googlegroups.com> <0bc08b9a-63e3-41bf-96d8-e9652c23a72a@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sun, 26 Mar 2017 21:21:09 -0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="3c30afd26c757785d9566a4b4af916f7"; logging-data="23159"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/XXgVwLnH6AukiM16BS+AZu5clREVh5E0=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 In-Reply-To: <0bc08b9a-63e3-41bf-96d8-e9652c23a72a@googlegroups.com> Cancel-Lock: sha1:XzJomRlYNbjUhJnFY0r4mjuG2rM= Xref: news.eternal-september.org comp.lang.ada:46475 Date: 2017-03-26T23:24:05+02:00 List-Id: On 03/26/2017 10:57 PM, Jere wrote: > > Also, how much of a method really is licensable? If someone wrote the > function : > > function Add_Numbers(A,B : in Integer) return Integer is > begin > return A+B; > end Add_Numbers; > > And stuck a pure GPL license on it, would any of my code that added two > numbers be under pure GPL from then on. Common sense tells me "no" but > then legal matters don't always work with common sense. In the same vein, > the BSS_Clear function of Robert's is simply a "loop through a pointer > and set each element to 0" function, which isn't ground breaking as well. > At what point is the method actually licenseable? The GPL is mostly about the right to obtain a copy of and reuse source code. You can always obtain a copy of and reuse GPL code. It's also about the representation of the code. Different implementations of the same algorithm are different representations, so the fact that one falls under the GPL doesn't mean the others do. So a GPL on function Add_Numbers doesn't mean that all code that adds numbers falls under the GPL. However, if you copy and use that exact function, then your code would. The 2 BSS_Clear algorithms might implement the same algorithm, but they do it differently, so the GPL on one doesn't affect the other. If you can do procedure BSS_Clear is N : constant Natural := ...; -- Based on start and end addresses type List is array (1 .. N) of Integer'Address; A : List; for A'Address use To_Address (BSS_Start); pragma Import (Ada, A); begin -- BSS_Clear A := List'(A'range => 0); end BSS_Clear; then that's a 3rd implementation that makes the looping implicit. -- Jeff Carter "I certainly have not the talent which some people possess, ... of conversing easily with those I have never seen before." Pride and Prejudice 121