Development

Design Goals

Gecode/R is designed to be readable and to be easy to learn and use without previous knowledge of constraint programming. Sometimes that comes at the cost of brevity, performance and user control. The ambition is that code using the interface should be readable enough to allow a new user to understand it without having to look in the API documentation.

The interface is currently aimed as a modelling interface. It does not support e.g. defining new propagators.

Development Status

The project is stable with the current version being 1.1.1 . The project has however been quite inactive since 2008. This leads to it, at the time of writing, being a couple of major versions behind Gecode (uses 2.x at the moment, latest is 4.x) and not being compatible with Ruby >= 1.9.

There are a couple of old branches aiming to bring Gecode/R up to speed with Gecode and Ruby (called gecode-3.0 and ruby-1.9.1 respectively). No one is currently working on those. As with everything, anyone is free to fork and continue with those if desired and/or express interest in having them done.