OpenGLRaw: A raw binding for the OpenGL graphics system

[ bsd3, graphics, library ] [ Propose Tags ]
Dependencies base (>=3 && <4.6), ghc‑prim [details]
License BSD-3-Clause
Maintainer Sven Panne <>
Revised Revision 1 made by HerbertValerioRiedel at Tue Jan 5 10:58:27 UTC 2016
Category Graphics
Home page
Bug tracker
Uploaded by SvenPanne at Sun Sep 13 14:24:27 UTC 2009
Distributions Debian:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, openSUSE:
Downloads 37936 total (282 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

OpenGLRaw is a raw Haskell binding for the OpenGL 3.2 graphics system and lots of OpenGL extensions. It is basically a 1:1 mapping of OpenGL's C API, intended as a basis for a nicer interface. OpenGLRaw offers access to all necessary functions, tokens and types plus a general facility for loading extension entries. The module hierarchy closely mirrors the naming structure of the OpenGL extensions, making it easy to find the right module to import. All API entries are loaded dynamically, so no special C header files are needed for building this package. If an API entry is not found at runtime, a userError is thrown.

OpenGL is the industry's most widely used and supported 2D and 3D graphics application programming interface (API), incorporating a broad set of rendering, texture mapping, special effects, and other powerful visualization functions. For more information about OpenGL and its various extensions, please see and





When compiling under Windows, use the native libraries instead of e.g. the ones coming with Cygwin.


Use glXGetProcAddress instead of dlsym on non-Windows/-Darwin platforms.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees