Clone this wiki locally
PRISM is open-source software and we encourage developers to adapt and extend it.
Here, we collate information and resources for developers of PRISM, its extensions or code that connects to it.
If you have questions or want to discuss issues relating to PRISM development, please use the PRISM developers forum on Google Groups first. For anything else, please email Dave Parker at email@example.com.
The source code for PRISM is here:
If you plan to extend/adapt it, create a fork from that repo. This is the most up-to-date version of the code. Public releases (both binaries and source) are published on the main PRISM download page and the source code versions are also available as GitHub releases.
The manual has installation instructions. These scripts for setting up PRISM on a fresh OS/VM are also useful:
The prism-api repo contains examples of how to connect to PRISM programmatically:
The source code for PRISM-games is here:
The latest code from the main PRISM repo is merged into this periodically.
For the main repo, we use a linear git history, rebasing rather than merging when feature branches are incorporated. There is no specific policy for retaining/updating the timestamps of the original commits.
The PRISM-games repo is periodically updated to incorporate updates from the main PRISM repo. This is done via merging, not rebasing, since some parts of the codebase have diverged a little.
The (modelling and property) languages in PRISM are processed using
parsers generated by JavaCC.
We use version 6.0. You do not need this to build a normal version of PRISM,
only if you have made your own modifications to the parsers.
(In that case, note that
make parser re-compiles just the parser code)