[Haskell-cafe] Merging the OpenGLRaw and gl packages

Sven Panne svenpanne at gmail.com
Mon Jan 4 16:18:08 UTC 2016

FYI: I've released a new OpenGLRaw version which is now quite close
to the gl package. The changes:

  * Use pattern synonyms for OpenGL enums.
  * Changed module name prefix from Graphics.Rendering.OpenGL.Raw to
  * Use slightly different type synonyms for GL type (introducing Fixed on
the way):
      * CDouble => Double (for GLclampd, GLdouble)
      * CFloat => Float (for GLclampf, GLfloat)
      * CInt => Fixed (for GLclampx, GLfixed)
      * CInt => Int32 (for GLint, GLsizei)
      * CSChar => Int8 (for GLbyte)
      * CShort => Int16 (for GLshort)
      * CUChar => Word8 (for GLboolean, GLubyte)
      * CUInt => Word32 (for GLbitfield, GLenum, GLhandleARB, GLuint)
      * CUShort => Word16 (for GLushort)

There are still a few minor differences between OpenGLRaw and gl (see
but nothing serious: As a test, I modified the luminance package to make it
compatible with the new OpenGLRaw, and the diff is really small (see
https://github.com/phaazon/luminance/pull/39). So I think that the gl
package can be retired, but that's of course totally up to Edward and
Gabríel. A few remarks:

  * Using pattern synonyms means losing support for GHC < 7.8, which I
consider OK now that 8.0 is coming soon. But to be sure, there is a branch
("classic") for the previous OpenGLRaw API if the need for minor
changes/bug fixes arises.

  * To stay consistent, GLURaw has been changed in a similar way.

  * The OpenGL package has been adapted to use the new APIs internally, but
its external API is still the same.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20160104/40f0bb5d/attachment.html>

More information about the Haskell-Cafe mailing list