philnguyen / soft-contract

A prototype of soft contract verification for an untyped functional language
MIT License
34 stars 10 forks source link

Build Status

Soft Contract Verifier

This is a branch of the tool that's under active development, with the main differences:

The tool is expected to be plagued with bugs and not ready for production.

The previous versions of the implementation are archived in branches icfp14, pldi-aec-2015, jpf, popl18-ae.

Installation

Clone this repository

git clone https://github.com/philnguyen/soft-contract.git

Navigate into the inner soft-contract directory and install using raco:

cd soft-contract/soft-contract
raco pkg install --deps search-auto

Usage

To verify one or more modules, use raco scv command:

raco scv paths/to/files.rkt ...

Non-standard construct

Using non-standard constructs require fake-contract:

(require soft-contract/fake-contract)