Sloth is a compiler that translates Curry programs into Prolog, extending our previous work on the translation of Babel programs.
The motivation for implementing and maintaining an apparently inefficient implementation of Curry is the need of keeping up to date with a rapidly evolving language, easily introducing changes that would take longer in an abstract machine implementation. Nevertheless, while slower than Prolog, Sloth is perfectly usable as a first contact with Curry.
Another goal is to encourage other groups to have their own implementations of Curry, by making the front-end of Sloth available to them.
Currently, Sloth generates Ciao Prolog code but we think is 100% ISO compliant - i.e.easily portable.
Some features present in Sloth are:
The system includes also an interactive top-level (Curry Shell).
Some of the techniques and concepts available in Sloth have been published in the following papers:
See the Sloth's roadmap, hosted in our bug tracker.
All the Sloth releases are available in the software section.
Our development is under Subversion control. Anonymous access is not available
Sloth needs Ciao 1.13 to build. As Ciao 1.13 is not yet released, we'll shortly make available a non supported snapshot here. Alternatively, you can ask us for such snapshot by email.
Sloth development version is installed in babel. To use it, just type:
You can access to Sloth's bug tracking system. Note: Anonymous access is currently in read-only mode, due to spam trouble. We hope to fix that shortly, as trac 0.10 will have an anti-spam plugin. If you'd like to submit a ticket, please use the mailing list.