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

Joeri Exelmans 2f1c07eebf Add test for nested function declarations and recursion (although we probably don't want recursion in our statecharts) 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 f93fc55dc3 Datamodel: Have a "setup" script declaring variables in the instance scope instead of silly XML tags <var> and <func> for variable and function declarations. Nicer syntax, more powerful and we reuse functionality (like parsing and interpreting a block of statements) instead of treating the datamodel as something special. Function declarations are just expressions assigned to variables or directly called. Nested function declarations should be fully supported (yet untested). 5 年之前
test 2f1c07eebf Add test for nested function declarations and recursion (although we probably don't want recursion in our statecharts) 5 年之前
textualnotations 068c424a35 Fix indentations. 7 年之前
.gitignore a6753bd559 Fixed all tests. 5 年之前
LICENSE 04ec602b01 initial commit (from svn repo) 9 年之前
README.md 19ac39f437 Add EvalContext data class to group parameters passed to Expression.eval, Statement.exec, Variable.load and Variable.store. 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:

Optional

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