Commit History

Author SHA1 Message Date
  Joeri Exelmans e71f01fadf Switch entirely to event-driven parsing. 5 years ago
  Joeri Exelmans a66d3b03f8 Support fixed model delta. 5 years ago
  Joeri Exelmans 8870590d16 Greatest common divisor is calculated for all durations in a model, serving as the "model delta", the smallest amount of time that can be simulated. "After" transitions always have units. 5 years ago
  Joeri Exelmans 7283c09aad Fine-tune parser rules. Split grammar file into 2. 5 years ago
  Joeri Exelmans 431c30a80c Tests beginning with "fail_" instead of "test_" should give an error when loading. Add some tests of illegal situations. 5 years ago
  Joeri Exelmans 0cc5d101d9 All expression types are statically typed. Simple type checks in place, e.g. upon assignment and when performing a function call. Implemented alternative XML event-based parser, but it's quite messy. More useful XML loading errors showing fragment of source file with error highlighted. WIP: Durations (for "after"-transitions) with time units. 5 years ago
  Joeri Exelmans 3618939825 Add 'duration' literal to action language + DurationLiteral expression type to statecharts syntax. Begin implementation of static type checker for expressions. 5 years ago
  Joeri Exelmans 71e8267e7d GCD of empty list of durations is zero, not None 5 years ago
  Joeri Exelmans 0924338960 Add Duration type (with units) 5 years ago
  Joeri Exelmans ac33f64a85 Add __init__.py files 5 years ago
  Joeri Exelmans 650cb9334c Overhaul of directory structure. 5 years ago
  Joeri Exelmans 92f966fbdc Add orthogonal variant of expression test 5 years ago
  Joeri Exelmans c95f32b9a2 Implemented datamodel and transition action code. 5 years ago
  Joeri Exelmans 29316eb04a Allow arbitrary expressions in 'after' attribute of transition 5 years ago
  Joeri Exelmans df435bfa8e Tidy grammar a bit 5 years ago
  Joeri Exelmans 40647fe803 Extend expressions test with comparisons and boolean logic. Use lazy evaluation. 5 years ago
  Joeri Exelmans b1d1ed4f9e Add expressions test. 5 years ago
  Joeri Exelmans 895807ec6e Begin extending grammar and abstract syntax for action language 5 years ago
  Joeri Exelmans 8b8fbba6b1 Parse tree-less parsing of expressions with Lark. Moved some stuff around. 5 years ago
  Joeri Exelmans 01e569bf01 More flexible and beautiful implementation of big/combo/small step round hierarchy. 5 years ago
  Joeri Exelmans 290ede49af Add some more test files 5 years ago
  Joeri Exelmans bf63200ebc Fix render scripts. 5 years ago
  Joeri Exelmans 0aefc3aa70 Allow wildcard value for fields in semantic options, resulting in automatic generation of test cases for all possible values for those wildcard fields. Cleaner statechart / test loading code. Add 'render' script for new statechart / test XML format. 5 years ago
  Joeri Exelmans 7d1f877767 Add version 2 of test framework 5 years ago
  Joeri Exelmans 505df8ab72 Begin writing test files in new format (runtime and test framework don't support it yet). 5 years ago
  Joeri Exelmans cd427692c0 Added Bitmap type. Added an alternative transition candidate generation implementation, starting from enabled events instead of the current state configuration. Candidate generation returns a generator instead of a list (better performance when there are lots of candidates, basically when there is no concurrency, candidate generation ends after the first valid candidate). Conflicting transitions (to which the Priority semantic aspect applies) are dealt with much more simply and efficiently by making assumptions about the order in which candidates are generated. 5 years ago
  Joeri Exelmans 217a979c0f Compare enabled events with event triggers by their IDs instead of names. 5 years ago
  Joeri Exelmans e7fad50fbd Every event name in the statechart gets a unique integer ID. This avoids string comparisons and enables us to represent sets of enabled events as bitmaps. 5 years ago
  Joeri Exelmans 3459e34ea8 Change order of methods 5 years ago
  Joeri Exelmans 202a78d34a Move some files 5 years ago