- From: Jacob Beard <jbeard4@cs.mcgill.ca>
- Date: Wed, 9 Jan 2013 10:07:13 -0500
- To: "VBWG Public (www-voice@w3.org)" <www-voice@w3.org>
- Cc: David Junger <tffy@free.fr>
- Message-ID: <CADywnFhzHr4xqpD4Mo8cxC3M3ous2=a16CjA+9h+n=B5xD9qwg@mail.gmail.com>
Can you link to a demo of the graphical viewer/debugger? On Wed, Jan 9, 2013 at 6:24 AM, David Junger <tffy@free.fr> wrote: > I am still working on JSSCxml, a Web browser implementation of SCXML. > <self-advertising> > JSSC is in active development, already quite capable (and largely > conformant), and distributed under a MIT license. > It includes and powers a graphical viewer/debugger for SCXML, which should > also become a graphical editor in the future. > https://github.com/Touffy/JSSCxml > </self-advertising> > > With DOM events, it is very good at interacting with its parent Web page. > It forces you to write robust event-based UI code while the complexity of > managing a Web app is tamed by the state chart. > What SCXML lacks in its ancestral area of dialog management compared with > dedicated languages is grammars and parsing. Adding them is easy, but it'll > always take a bit more code. However, SCXML makes up for it with its core > expressivity (<history> and <parallel> in particular give you complex > behavior in a way that's incredibly easy to design) and is orders of > magnitude easier to debug than typical CCXML / VoiceXML implementations. If > you've ever worked with those, you surely remember the pain. Cryptic debug > logs are over, instead you can litterally look at your state chart as the > application takes transitions through it. I think that point will be > decisive in encouraging a <transition target="scxml"/> for the dialog > management world. > > > Now some specific remarks: > > > C.2.6: > The value at an undefined location is undefined, but it does not > necessarily prevent the ECMAScript interpreter from assigning a new value > to it (if the location points to a yet-undeclared property of an existing > object). It may be desirable to let the ECMAScript datamodel behave like > ECMAScript and allow such assignments to undeclared locations, raising an > error when and only when the ECMAScript interpreter does. Certainly > wouldn't hurt my implementation, I'd just have to remove some ugly code. > > > I have noticed a few critical problems with the new definition of the DOM > send type. Sorry ;) > > D.3.1 second paragraph: > - the name of the CustomEvent's custom property is "detail" without an "s" > - in the browser, it is impossible to set the value of many event > properties (they are read-only to content JavaScript) so a browser > implementation cannot be conformant with the current requirement that any > event property named in namelist or <param> be set to the corresponding > value (no error will be raised by the attempt, it will simply leave the > value unchanged). > > D.3.2: > - It is not practical to prevent Element instances (such as those > representing SCXML states and other elements) in the browser from > implementing the EventTarget interface, and neither is it practical > (without native support) to have an inline <scxml> document in HTML (an > <scxml> tag with a 'src' attribute is fine). > - It is irrelevant at this point that the <scxml> element and its children > implement it, since it cannot be used to listen to all DOM events anyway, > because unlike with SCXML events, DOM events must have a registeredd > listener in their name before anything will happen. Just cut that out of > the recommendation. > - Nothing about <content>? For CustomEvents, it shouldn't be a problem to > be consistent and say that the <send> element may have one <content> child > excluding any namelist and <param>s, and that the event's "detail" property > must be set to the child's text contents (or possibly to that content > interpreted as JSON). > > > > As I have pointed out before, the 'basichttp' I/O Processor is > incompatible with a client-side implementation, but since that Processor is > optional it's all right. > > > I'd like to attract your attention to a couple of recent developments of > HTML that deal with sending/receiving events and could inspire SCXML: > http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html > > http://www.whatwg.org/specs/web-apps/current-work/multipage/web-messaging.html > > > David >
Received on Wednesday, 9 January 2013 15:07:59 UTC