This is a copy of the source code for MIT's Alloy Analyzer model checking tool.
It also includes an Ant build.xml script, which is not part of the original MIT source code.
This copy was created to facilitate modification to the core Alloy tool (the parts which fall
under the edu.mit package structure).
It was created as follows (not necessarily in this order):
- Downloaded the JAR file located at: http://alloy.mit.edu/alloy/downloads/alloy4.2.jar
- Extracted the JAR file.
- Added this
README.mdfile and abuild.xmlfile. - Deleted core
.classfiles (using the clean target inbuild.xml)
The Ant build.xml script contains the following targets:
-
build: Compiles the
.javafiles under theedudirectory.Other directories are not touched; it is assumed that these contain libraries which have been pre-compiled.
The auto-generated parser and lexer
.javafiles (located in theedu/mit/csail/sdg/alloy4compiler/parserdirectory) are neither deleted nor generated by the Ant script. The directory already contains shell scripts to re-generate them using JFlex and CUP. -
dist: Creates an executable JAR file in the
distdirectory. This JAR file looks essentially like the official Alloy JAR file released by MIT. -
all: Runs dist.
-
clean: Deletes the
distdirectory and all class files under theedudirectory.
- As per the manifest, the main class is
edu.mit.csail.sdg.alloy4whole.SimpleGUI. - The version number and build date which the tool displays are not accurate.
These are set in the
edu.mit.csail.sdg.alloy4.Versionclass, and are supposed to be updated by the build script when building a release. This project was not intended to create official releases, so it was left as-is. - There is a class
edu.mit.csail.sdg.alloy4.MailBugwhich includes logic to email crash reports to MIT. You should change this class if you are modifying the source code and creating your own release.