Box2D Lite ported to R6RS Scheme
Scheme
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
demos Apache License 2.0 Jan 26, 2016
util Apache License 2.0 Jan 26, 2016
README.md
arbiter-key.sls
arbiter.sls Apache License 2.0 Jan 26, 2016
body.sls Apache License 2.0 Jan 26, 2016
clip-segment-to-line.sls Apache License 2.0 Jan 26, 2016
clip-vertex.sls
collide.sls Apache License 2.0 Jan 26, 2016
compute-incident-edge.sls
contact.sls
edge-numbers.sls Apache License 2.0 Jan 26, 2016
edges.sls Apache License 2.0 Jan 26, 2016
joint.sls Apache License 2.0 Jan 26, 2016
mat.sls
vec.sls Apache License 2.0 Jan 26, 2016
world-parameters.sls Apache License 2.0 Jan 26, 2016
world.sls

README.md

Introduction

Box2D is a physics engine written in C++ by Erin Catto. Box2D Lite is a simpler version which Erin posted to his blog once upon a time. This is a port of Box2D Lite to R6RS Scheme.

Setup

$ cd ~/scheme # Where '~/scheme' is the path to your Scheme libraries
$ git clone git://github.com/dharmatech/surfage.git
$ git clone git://github.com/dharmatech/dharmalab.git
$ git clone git://github.com/dharmatech/agave.git

Running the demos

Run a demo in Ikarus

$ ikarus --r6rs-script ~/scheme/box2d-lite/demos/small-pyramid.sps

Run a demo in Chez

$ scheme --program ~/scheme/box2d-lite/demos/small-pyramid.sps

Run a demo in Larceny

$ larceny --r6rs --program ~/scheme/box2d-lite/demos/small-pyramid.sps

Notes

Chez Scheme

OpenGL library for Chez Scheme: chez-gl.

On my system, I keep R6RS libraries in ~/scheme. I keep chez-gl in ~/src. So my CHEZSCHEMELIBDIRS is set like this in my ~/.bashrc:

export CHEZSCHEMELIBDIRS=~/scheme:~/src/chez-gl

Make a demo load faster in Ikarus

$ ikarus --compile-dependencies ~/scheme/box2d-lite/demos/small-pyramid.sps

Screenshot

dominos screenshot