#+title: cl-opencl #+author: Thomas Albers Raviola cl-opencl aims to provide a lispy set of bindings for programming with OpenCL from common lisp. While for most functions a high-level alternative is provided to avoid interacting directly with ~cffi~, by the very nature of OpenCL some functions still require direct manipulation of ~cffi:pointers~. For these some kind of high-level convenience function is still provided (with ~&optional~ or ~&key~ arguments) but use of ~cffi~ is nonetheless needed. A package with raw bindings to the OpenCL API is also provided for situations that require it. *NOTE*: This library is still in early development and it may be subject to changes. A list with the progress and some of the future ideas is included as ~TODO.org~ * Name cl-opencl is not a unique name, there are many other libraries with this name, some of them still mantained. Ideally I would like to rename it. * Why another OpenCL library for Common Lisp This is not the first time someone writes a set of bindings for OpenCL, but I've some future plans that could benefit from having a library under my direct control in terms of development decisions. In particular, a set of libraries for numeric and scientific computations. * Website [[https://thomaslabs.org]] * Thanks Throughout the development some of my decisions were inspired by the following projects: [[https://github.com/3b/cl-opencl-3b][3b/cl-opencl-3b]] [[https://github.com/inducer/pyopencl][inducer/pyopencl]] * License cl-opencl is distributed unded the terms of the GPL-3.0 license (see ~LICENSE~).