CRIME is a research artifact developed at the Software Languages Lab which can be best described as 'a coordination language for mobile devices'. The language has been designed as a declarative medium to describe how applications should adapt to changes in its immediate environment. The language is used as a research artifact to study optimization techniques and coordination using temporal logics, yet it is also used to develop realistic scenarios.
CRIME has been designed to co-exist with available Java programs. It offers Java programs a way to enrich the vocabulary of the coordination language by defining custom actions which correspond loosely to method invocations on the Java program. Similarly programs can explicitly add facts to signal detected changes in the environment. This makes CRIME an ideal language to write 'context-aware glue code' to make isolated Java programs aware of one another's presence and 'state'.
Download the CRIME engine Christophe Scholliers and Eline Philips developed for their master thesis.
This build contains:
The CRIME interpreter is written in pure Java and requires a regular J2SE Java Virtual Machine supporting version 1.4 or higher.