The SCCD (Statecharts + Class Diagrams) compiler and runtime.

Joeri Exelmans 99f2a33513 Fix bug in zero-length blocks. 5 سال پیش
bsml_features e92f44ba01 Rename python src dirs to match installed names (can set to 'src' dir so you don't have to re-install after every change). Updated SCCD schema to accept all existing tests. Added XML namespace to tests. Compiler checks input file against SCCD schema. New compiler dependency 'lxml' (largely compatible with xml.etree) for dealing with XML namespaces and schemas. 5 سال پیش
doc 46113778d9 associate_instance and disassociate_instance now fixed 8 سال پیش
examples 37525b9675 private ports now work in both directions; added a bouncing balls example where the SCCD model does not contain UI code (completely external) 6 سال پیش
src 99f2a33513 Fix bug in zero-length blocks. 5 سال پیش
test 14719055bb Action language components are now completely independent from anything statechart-related. 5 سال پیش
textualnotations 068c424a35 Fix indentations. 7 سال پیش
.gitignore a6753bd559 Fixed all tests. 5 سال پیش
LICENSE 04ec602b01 initial commit (from svn repo) 9 سال پیش
README.md 9ed4bbd9c6 Got rid of dependency 'typing_inspect' giving problems with Python 3.6 by declaring our 'SCCD' types (for int, float, function, array, ...) instead of using Python's built-in types. 5 سال پیش
schema.xml e92f44ba01 Rename python src dirs to match installed names (can set to 'src' dir so you don't have to re-install after every change). Updated SCCD schema to accept all existing tests. Added XML namespace to tests. Compiler checks input file against SCCD schema. New compiler dependency 'lxml' (largely compatible with xml.etree) for dealing with XML namespaces and schemas. 5 سال پیش

README.md

Statecharts and Class Diagram Compiler

Dependencies

Mandatory

  • CPython >= 3.6 or PyPy >= 7.3.0 (Compatible with Python 3.6)
  • The following packages from PyPi:
    • lark-parser for parsing state references and action code
    • lxml for parsing the SCCD XML input format
    • termcolor for colored terminal output
    • dataclasses (not needed for Python >= 3.7)

Optional

  • state-machine-cat to render statecharts as SVG images. Runs on NodeJS, installable from NPM.