Skip to content
Purely Functional Rendering Engine
Haskell Other
Find file

LambdaCube 3D

LambdaCube 3D is a domain specific language and library that makes it possible to program GPUs in a purely functional style.
You can find more info in the development blog.


Lambdacube-core contains the graphics EDSL and the OpenGL 3.2 backend.

    cd lambdacube-core
    cabal install


Quake III level viewer demo application for lambdacube-core. It requires the *.pk3 data files from original Quake 3 demo or full version of game. Addtionally custom made game levels are available from During startup the application will find all .pk3 files available in the current directory. The map name can be given as an argument of the q3demo executable.

    git clone
    cd quake3
    cabal install

Example usage:
    q3demo q3dm1


A revival of the classic racing game Stunts to serve as a non-toy-sized example for LambdaCube. It depends on the Bullet physics engine haskell binding. It is available from git repository only.
git clone git://
The bullet installation instructions can be found in bullet/README. In order to make the stunts demo work, you need to download the original game as per the instructions given by the program.

    git clone
    cd stunts
    cabal install



Stunts demo 1

Stunts demo 2

Quake III level viewer alpha

Something went wrong with that request. Please try again.