| Crates.io | ascetic_cli |
| lib.rs | ascetic_cli |
| version | 0.0.2 |
| created_at | 2020-01-28 20:10:45.711415+00 |
| updated_at | 2020-04-15 19:16:42.802158+00 |
| description | Command-line tools for analysis and synthesis of cause-effect synchronised interacting systems |
| homepage | |
| repository | https://github.com/k7f/ascetic |
| max_upload_size | |
| id | 202839 |
| size | 65,632 |
Analysis and synthesis of cause-effect synchronised interacting systems. This is a set of command-line tools of the Ascesis project.
In principle, ascetic_cli should build wherever rustc and cargo
runs. Its executables should run on any
platform
supporting the Rust std library. Be aware, though, that the project
is very much a WIP. The main toolchain used in development is nightly
channel of Rust 1.43.
Having Rust installed,
ensure its version is at least 1.43: check with cargo version and
run rustup update if needed. Then
$ cargo install ascetic_cli
will automatically download, build, and install the latest
ascetic_cli release on
crates.io.
C-e structures may be defined in text files by using the
Ascesis language or the .cex
format of textual description. The Ascesis language has formally
specified
syntax
and informally described
semantics.
The format of .cex text files is YAML-based, but nowhere documented
and very likely to change (there are some, perhaps self-explanatory,
examples).
Run the ascesis executable to load c-e structures from (one or more)
.ces or .cex files and analyse them. By default, the program will
check link coherence and print firing components, if there are any, or
inform about structural deadlock. When instructed, it may execute one
step of a simulation,
$ ascesis scripts/ces/zerotest.ces -gentry -gtested
run a longer simulation,
$ ascesis scripts/ces/arrow.ces scripts/ces/choice-two.ces -ga:3 -x3
or validate a set of files,
$ ascesis validate -r scripts
To see the list of available subcommands and options run
$ ascesis --help
ascetic_cli is licensed under the MIT license. Please read the
LICENSE-MIT file in this repository for more
information.