Joeri Exelmans
|
e71f01fadf
Switch entirely to event-driven parsing.
|
преди 5 години |
Joeri Exelmans
|
a66d3b03f8
Support fixed model delta.
|
преди 5 години |
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 години |
Joeri Exelmans
|
7283c09aad
Fine-tune parser rules. Split grammar file into 2.
|
преди 5 години |
Joeri Exelmans
|
431c30a80c
Tests beginning with "fail_" instead of "test_" should give an error when loading. Add some tests of illegal situations.
|
преди 5 години |
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 години |
Joeri Exelmans
|
3618939825
Add 'duration' literal to action language + DurationLiteral expression type to statecharts syntax. Begin implementation of static type checker for expressions.
|
преди 5 години |
Joeri Exelmans
|
71e8267e7d
GCD of empty list of durations is zero, not None
|
преди 5 години |
Joeri Exelmans
|
0924338960
Add Duration type (with units)
|
преди 5 години |
Joeri Exelmans
|
ac33f64a85
Add __init__.py files
|
преди 5 години |
Joeri Exelmans
|
650cb9334c
Overhaul of directory structure.
|
преди 5 години |
Joeri Exelmans
|
92f966fbdc
Add orthogonal variant of expression test
|
преди 5 години |
Joeri Exelmans
|
c95f32b9a2
Implemented datamodel and transition action code.
|
преди 5 години |
Joeri Exelmans
|
29316eb04a
Allow arbitrary expressions in 'after' attribute of transition
|
преди 5 години |
Joeri Exelmans
|
df435bfa8e
Tidy grammar a bit
|
преди 5 години |
Joeri Exelmans
|
40647fe803
Extend expressions test with comparisons and boolean logic. Use lazy evaluation.
|
преди 5 години |
Joeri Exelmans
|
b1d1ed4f9e
Add expressions test.
|
преди 5 години |
Joeri Exelmans
|
895807ec6e
Begin extending grammar and abstract syntax for action language
|
преди 5 години |
Joeri Exelmans
|
8b8fbba6b1
Parse tree-less parsing of expressions with Lark. Moved some stuff around.
|
преди 5 години |
Joeri Exelmans
|
01e569bf01
More flexible and beautiful implementation of big/combo/small step round hierarchy.
|
преди 5 години |
Joeri Exelmans
|
290ede49af
Add some more test files
|
преди 5 години |
Joeri Exelmans
|
bf63200ebc
Fix render scripts.
|
преди 5 години |
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 години |
Joeri Exelmans
|
7d1f877767
Add version 2 of test framework
|
преди 5 години |
Joeri Exelmans
|
505df8ab72
Begin writing test files in new format (runtime and test framework don't support it yet).
|
преди 5 години |
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 години |
Joeri Exelmans
|
217a979c0f
Compare enabled events with event triggers by their IDs instead of names.
|
преди 5 години |
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 години |
Joeri Exelmans
|
3459e34ea8
Change order of methods
|
преди 5 години |
Joeri Exelmans
|
202a78d34a
Move some files
|
преди 5 години |