Last active
June 13, 2019 13:46
-
-
Save matb33/be9420b328f1ec3391ffbbbe5a4a6111 to your computer and use it in GitHub Desktop.
# What I'm attempting to highlight here are 3 things in relation to WireState:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# What I'm attempting to highlight here are 3 things in relation to WireState: | |
# 1. The need for @include (which you've solved!) -- it's impossible to re-use statecharts | |
# . with SketchSystems | |
# 2. The need for being able to re-use state names (... solved?) -- again, SketchSystems | |
# . unique IDs prevent any kind of composability | |
# 3. A proposal for a new syntax that actually doesn't technically do anything, but would | |
# . allow us to mimic the `send` style syntax from our imported machines. We both know | |
# . that in this case, `accept` is already available as an event while in either the | |
# . "Condensed" or "Expanded" states since the event will bubble up. But it's not obvious | |
# . if you're looking at the "Display" tree isolated in a separate statechart that will be | |
# . imported later. Note that I've commented out the illegal syntax (`# <- accept` would | |
# . normally be `<- accept`) so that SketchSystems can still parse this thing. | |
# . You can also probably envision leveraging the `<- accept` syntax in the Diagram view | |
# . where `accept` would be repeated inside both the "Condensed" and "Expanded" boxes. | |
@fragment Display Acceptance Stuff | |
Display Acceptance Stuff | |
Condensed | |
expand -> Expanded | |
Expanded | |
# <- accept | |
condense -> Condensed | |
Terms | |
accept -> EULA | |
@use Display Acceptance Stuff | |
EULA | |
back -> Terms | |
accept -> Home | |
Display Acceptance Stuff2* | |
Condensed2 | |
expand -> Expanded2 | |
Expanded2 | |
condense -> Condensed2 | |
Home |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment