On Mon, Oct 3, 2011 at 6:04 PM, Jason Dagit <dagitj@gmail.com> wrote:
On Mon, Oct 3, 2011 at 3:56 AM, Luis Cabellos <
cabellos@ifca.unican.es> wrote:Your bindings are a higher quality than the the OpenCLRaw bindings and
you're doing good technical work, but I stopped using your bindings
for a couple reasons:
* The main reason is that I'm not comfortable with the license
you're using. The original code by Jeff Heard was BSD3 with an
additional copyright notice. Your code is AGPL3. The GPL is known to
cause problems with Haskell code due to cross module inlining. I
don't know how the "A" in AGPL changes things.
I understand your point. I didn't know the problems with cross module inlining that Haskell suffers. I learned the BSD3, I think is a good and I'll change it on github and I'll put in the next release.
* Some of the exposed function names have been changed from the
original name in the OpenCL specification. This is the same thing
that was done with the OpenGL bindings and it is very confusing for
people who come to the Haskell bindings from the official
documentation. I realize that some of the API functions require some
bit of name mangling, but I think the current way is not the right
way. For example with this function:
http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/clGetDeviceInfo.html
I use the pattern get[Type]Info -> to get[Type][specificInfo] where specificInfo is the OpenCL name of an enumerate. I don't know if your proposal, I open a ticket on github to think about.
We could have a different version of the function for each return
type, clGetDeviceInfo_FPConfig, clGetDeviceInfo_AddressBits, etc.
It's a great naming convention but it has the property that someone
searching the bindings or the bindings' haddocks for clGetDeviceInfo
will find those functions. I think this is better than naming it
clGetDeviceExtensions, which is not in the OpenCL specification.
I'd still be willing to test the changes you have, I just don't want
to contribute to your bindings due to the license. I currently
thinking of starting my own bindings (Jeff's bindings contain too many
small bugs and if I'm going to change most lines of code then I might
as well start from scratch so that it can have a standard BSD3
license).
Jason
I'll change the License to BSD3, Please, keep testing the code and merge back your changes. I thank for your help.
Thanks for the feedback.
Luis