When I went ahead and had a look at one of the examples of hexagonal.js, Misko Hevery's answer in quora <a href="http://www.quora.com/Ember-js/Which-one-of-angular-js-and-ember-js-is-the-better-choice" rel="nofollow">http://www.quora.com/Ember-js/Which-one-of-angular-js-and-em...</a> immediately came to my mind. He notes that there are 3 ways to bind data to view. 1 ) in the code - jquery way
2 ) In html bindings - angular way
3 ) in a metadata file.. which is the glue that is professed in this library.
According to the page, it's neither a framework, nor a library - isn't that a bit counterintuitive? That makes it sounds as if it is beyond any of the existing styles of code reuse in software development, which is not the case.<p>I'm sure many would identify it as a library in the classical sense, since it is a bundle of code you include in your application and make calls to.
Maybe I'm not "getting it", but what is the difference between:<p><pre><code> After(@useCase, "askForName", => @gui.showAskForName())
</code></pre>
vs.<p><pre><code> @useCase.askForName()
@gui.showAskForName()
?</code></pre>
Is hexagonal.js basically a very simple state machine framework? :) E.g., <a href="https://github.com/pluginaweek/state_machine" rel="nofollow">https://github.com/pluginaweek/state_machine</a>