Previous version of LambdaCube 3D as Embedded Domain Specific Language in Haskell. Check the latest system:
Haskell Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
agda
lambdacube-core
lambdacube-edsl
lambdacube-gl
lambdacube-samples
samples
typesystem
.gitignore
LambdaCube-CL.tex
README.md
lc-q3.png
lc-stunts-1.png
lc-stunts-2.png

README.md

Previous version of LambdaCube 3D as Embedded Domain Specific Language in Haskell. Check the latest system: http://lambdacube3d.com

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. http://lambdacube3d.wordpress.com/

Lambdacube-core

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

Install:
    cd lambdacube-core
    cabal install

Q3Demo

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 http://lvlworld.com. 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.

Install:
    git clone https://github.com/csabahruska/quake3
    cd quake3
    cabal install

Example usage:
    q3demo q3dm1

Stunts

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://github.com/csabahruska/bullet.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.

Install:
    git clone https://github.com/csabahruska/stunts
    cd stunts
    cabal install

Usage:
    stunts

Screenshots

Stunts demo 1

Stunts demo 2

Quake III level viewer

githalytics.com alpha