Joeri Exelmans
|
829cb29aa4
Action language: Added float literals, subtractions between durations and fixed bug in binary expression type check.
|
5 éve |
Joeri Exelmans
|
3c95a734bd
Simpler Source-Child priority implementation
|
5 éve |
Joeri Exelmans
|
ff638964bb
Experiment with statically generating sets of concurrent transitions.
|
5 éve |
Joeri Exelmans
|
d6c05d3510
Implemented additional "arena" hierarchical priority semantics + corrected existing semantics (Source-Child semantics does no longer reverse "explicit" (document) order of transitions of equal priority). Add tests for hierarchical priority semantics.
|
5 éve |
Joeri Exelmans
|
61b8f1b513
Higher re-use of transition candidate generation logic
|
5 éve |
Joeri Exelmans
|
1db62ed6f5
Event queue: use collections.Counter class
|
5 éve |
Joeri Exelmans
|
4deb813733
Event queue: more efficient removing of items
|
5 éve |
Joeri Exelmans
|
b83afd8058
Event loop: Model remains responsive if we cannot keep up with wallclock time. Model simply runs at reduced speed but will catch up when it has the chance.
|
5 éve |
Joeri Exelmans
|
2ff5a98dc8
Various bug fixes + improvements to digital watch model.
|
5 éve |
Joeri Exelmans
|
03957f99e5
More flexible and efficient output events. Proper canceling of timer events in the controller event queue instead of ignoring canceled events in the statechart (statechart should not execute a big step for a canceled event)
|
5 éve |
Joeri Exelmans
|
5f01be7d40
Added missing type check.
|
5 éve |
Joeri Exelmans
|
a5bd657f8d
Call Tk's update_idletasks when scheduling another wakeup, so the (digital watch) interface remains responsive under full load.
|
5 éve |
Joeri Exelmans
|
d98becde8f
More slotted classes
|
5 éve |
Joeri Exelmans
|
49bc688471
More slotted classes and using Python's 'with' statement for recording timings.
|
5 éve |
Joeri Exelmans
|
638185fbe3
Turn State and Transition classes (many attribute accesses at runtime) and Event class (frequently created at runtime) into slotted classes for performance. State and Transition are 'frozen' after tree optimization (writing an attribute would raise an error)
|
5 éve |
Joeri Exelmans
|
9a65f34293
Entering a history state whose parent hasn't been exited before should exit the parent's default state.
|
5 éve |
Joeri Exelmans
|
cc287b49ff
Add file mentioning tests yet to write.
|
5 éve |
Joeri Exelmans
|
26474302b9
When not debugging, use 'int' type instead of our Bitmap type (which inherits 'int'). Almost halves transition execution time!
|
5 éve |
Joeri Exelmans
|
def1c58b23
Remove unused code.
|
5 éve |
Joeri Exelmans
|
858f49384f
Partially-static computation of a transition's enter state set, saving us 0.05 ms (!) when executing a complex transition.
|
5 éve |
Joeri Exelmans
|
af62dc077c
Various small fixes
|
5 éve |
Joeri Exelmans
|
f8e9432157
Debug print sets of input, output and internal events at controller construction.
|
5 éve |
Joeri Exelmans
|
f7387ed7e1
Fix bug in XML parser.
|
5 éve |
Joeri Exelmans
|
bc74051b2f
Use "Take One" for digital watch.
|
5 éve |
Joeri Exelmans
|
b5d9ee35b0
Cleaning
|
5 éve |
Joeri Exelmans
|
47499356c2
Introduce XML rules for "single instance models" (like digital watch). Controller delta can be set in XML.
|
5 éve |
Joeri Exelmans
|
7e9ac8f43d
Cleaning up
|
5 éve |
Joeri Exelmans
|
eb867dae7f
Factor out reusable event loop integration stuff from Digital Watch example to SCCD library. Rename "Model" classes to "CD" (Class Diagram) for clarity.
|
5 éve |
Joeri Exelmans
|
cede8ccf90
Digital watch is working!
|
5 éve |
Joeri Exelmans
|
a57ca82fd6
Got digital watch pretty much working, with some bugs.
|
5 éve |