<div dir="ltr">Hi Joe, <div><br></div><div>I wonder -- from this point of view of the APIs, what do you think of the now defunct `gs` application?</div><div><br></div><div>People have given good feedback, but I will add my 2c too. There are several issues to solve. </div><div><br></div><div>One issue is "how do I put the GUI together?", which IMHO is best done declaratively. With an adequate language, even dynamic UIs can be described. This is relatively easy.</div><div><br></div><div>The second issue is handling the state: bot the application state (what the real app needs to know from the inputs) and the GUI state (for example, a checkbox controlling the enabled state of the rest of the controls on the page; or an input validator for the whole UI). The latter is the tricky one, in my experience, as some entity needs to have the whole state available. Updates to this states need to be observed, which is not easy to do correctly (see even below).</div><div><br></div><div>Then there is the issue of performance, again two-sided: <br></div><div>- we'd like to be able to use native controls/widgets, but allow custom ones too. Here we also stumble upon supporting all OSs and graphics frameworks.</div><div>- updating the UI needs to be done at the appropriate moments, i.e. if needed and not more often than the display can update itself.</div><div><br></div><div>There is one technology that is available everywhere, has optimized rendering and is reasonably easy to adapt and adapt to: HTML. With frameworks like Electron (<a href="https://electron.atom.io/">https://electron.atom.io/</a>), it is available on the desktop and with the full power of JavaScript. Web components are on the rise and there are libraries (vue.js, <a href="https://vuejs.org/">https://vuejs.org/</a>, for example) that make them easy to build and reason about. The remaining issue however is an interesting hurdle: how to interface JS with Erlang? There have been interesting projects for that (like beam.js and erlv8), but I can't find any active one - it would be interesting to know what what the reason was for not continuing the work.</div><div><br></div><div>best regards,</div><div>Vlad</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jul 8, 2017 at 11:28 AM, PAILLEAU Eric <span dir="ltr"><<a href="mailto:eric.pailleau@wanadoo.fr" target="_blank">eric.pailleau@wanadoo.fr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello Joe,<br>
<br>
I'm particularly interested in XRC [1] standard.<br>
<br>
I think your effort, and efforts of people helping, may be a step to create XSLT templates to write wx abstract code to help people create easily wx UI without the huge effort to understand basics of wx.<br>
wx documentation is intimidating (well like was Erlang documentation first time I looked at it many years ago :) ...) but much harder than it  to be able to write code quickly.<br>
<br>
Those templates could be a plugin in usual build tools to handle .xrc files, like asn1 file are handled to create code.<br>
<br>
If I can help, I will !<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
My intention is to try and decompose wxErlang into a large number of<br>
small examples, where each example illustrates one feature of the<br>
system. Also so show how to build complex examples from the small<br>
parts.<br>
<br>
I'll make all the code available on github so you can join in the fun<br>
(is this fun?).<br>
</blockquote>
<br></span>
[1] <a href="http://docs.wxwidgets.org/trunk/overview_xrc.html" rel="noreferrer" target="_blank">http://docs.wxwidgets.org/trun<wbr>k/overview_xrc.html</a><div class="HOEnZb"><div class="h5"><br>
<br>
______________________________<wbr>_________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/list<wbr>info/erlang-questions</a><br>
</div></div></blockquote></div><br></div>