Mercurial > pysmcl
changeset 254:67875afe1c90
Added INSTALL, cleaned the README a bit
author | Sigurd Meldgaard <stm@daimi.au.dk> |
---|---|
date | Wed, 06 Jan 2010 14:01:10 +0100 |
parents | 8c71a40ed328 |
children | c837fa9ff823 |
files | INSTALL README |
diffstat | 2 files changed, 38 insertions(+), 29 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/INSTALL Wed Jan 06 14:01:10 2010 +0100 @@ -0,0 +1,17 @@ +Requirements: + +To run a pysmcl application you will need a working install of +Viff (http://viff.dk), and that again requires a working Twisted, GMP, + +This project uses the Python module ast, and therefore requires at +least Python 2.6 + +To run: + +To use the pysmcl runner, put your pysmcl base directory into your +PYTHONPATH environment variable. And run: + +python -m pysmcl.runpysmcl app.py player.ini + +Where app.py is a file containing the pysmcl script, and player.ini +contains the viff configuration of you want to use.
--- a/README Wed Jan 06 12:36:26 2010 +0100 +++ b/README Wed Jan 06 14:01:10 2010 +0100 @@ -1,46 +1,38 @@ -Requirements: - -To run a pysmcl application you will need a working install of -Viff (http://viff.dk), and that again requires a working Twisted, GMP, - -This project uses the Python module ast, and therefore requires at -least Python 2.6 +A prototype implementation of PySMCL -To run: -To use the pysmcl runner, put your pysmcl base directory into your -PYTHONPATH environment variable. And run: - -python -m pysmcl.runpysmcl app.py player.ini - -Where app.py is a file containing the pysmcl script, and player.ini -contains the viff configuration of you want to use. +See installation instructions in INSTALL -A quick overview of the structure and files +A quick overview of the directory structure, and files: pysmcl: Contains the source code of the implementation of the PySmcl - language. compatibility_check.py: Checks if @secret functions use - features outside their scope flow.py: Builds a flow graph, and does - fixpoint analysis on it graph.py: Abstract datatype for a flowgraph, - contains a todot method util.py: Error-handling pretty_print.py: - Functions for pretty-printing the python AST-nodes + language. + + flow.py: Builds a flow graph, and does fixpoint analysis on it + graph.py: Abstract datatype for a flowgraph, contains a todot method + util.py: Error-handling + pretty_print.py: Functions for pretty-printing the python AST-nodes secret_annotator.py: Analyses secret variables/expressions - proof_burden.py: Still only Proof of concept, prints out a - proof-burden for openings secret_ifs.py: Rewrites secret annotations + proof_burden.py: Still only Proof of concept, prints out a proof-burden for openings + secret_ifs.py: Rewrites secret annotations + compatibility_check.py: Checks if @ideal_functionalities use unsupported features + functions.py: the fundamental functions of pysmcl programs + runtime_sugar.py: changes calls so they fit with the Viff framework + editor_info.py: Analyses a program, and outputs info, suitable for the eclipse plugin ideal_functionality.py: The decorator is declared here pysmcl/test: Various kinds of tests. -pysmcl/tes/unit: Unit tests. +pysmcl/test/unit: Unit tests. doctests.py: Use this to run all doctests (must be modified when new files get doctests) run as python pysmcl/test/unit/doctests.py +eclipse/: An eclipse plugin + Examples: Contains example applications - while-loop.py: a basic example + millionaires.py: The millionaires problem + while-loop.py: A binary search on secret values, for an auction + proofexample.thy: experiments with formal proofs in Isabelle - -Semantics: Files related to the description of the language. - semantics.tex: A description of the language and analysis. -