These are chat archives for jdubray/sam

13th
Mar 2016
Jean-Jacques Dubray
@jdubray
Mar 13 2016 14:04
Well, that's has been my point all along in all these discsussions:
a) ignore the semantics of State Machines at your own risks
b) you cannot write code as state machines, except when it is simpler to do so (in rare cases)
c) in the vast majority of cases the TLA+ structure works just fine with a bunch of if-then-else in lieu of "control states" and transitions.
Otherwise, we can trust Dr. Lamport to be smart enough to pick the right formalism for the right job, and if FSM was the right one, that's the one he would have picked.
Jean-Jacques Dubray
@jdubray
Mar 13 2016 14:12
could someone explain to me what {...xyz} means in ES6? I believe I understand what it means in the context of arrays or function arguments, but I can't find a reference that explains its use with curly brackets?
I found this link quite useful for people who are ES6 challenged (or faux devs, pick one) like me.
Jean-Jacques Dubray
@jdubray
Mar 13 2016 14:20
This message was deleted
weepy
@weepy
Mar 13 2016 14:30
It's like {x,y,z}
Which is { x:x, y:y,z:z}
So I think it kinda shallow clones the object
Jean-Jacques Dubray
@jdubray
Mar 13 2016 14:41
I see { ... some_object} returns a copy of that object
weepy
@weepy
Mar 13 2016 14:55
I think so. Shallow cooy
Jean-Jacques Dubray
@jdubray
Mar 13 2016 16:09
Really excited to start building on Gunar's TimeTravel tool.
I have published the first commit of SAFE (State-Action-Fabric-Element) a micro-container for SAM implementations on Node.js
Suggestions/Contributions are welcome
Milan Simonovic
@mbsimonovic
Mar 13 2016 21:29
this looks like a similar initiative started back in 2003, to bring back state machines to event-driven (reactive) programming
Stardrive ENGG
@HighOnDrive
Mar 13 2016 21:48
@jdubray Definitely using a state machine of sorts myself. Looked into a lot of dedicated FSM APIs a while back like http://statejs.org/ and many others. Also read https://www.w3.org/TR/scxml/ yesterday. These solutions suffer from to much OOP and trying to put a complete programming language into XML. Many things need to be considered to arrive at an elegant and flexible extensible solution.