[erlang-questions] GUI development with Erlang

Alan Gingras alangingras@REDACTED
Sat Dec 9 13:27:05 CET 2017


Thanks Joe.  I appreciate yours (and others) suggestions.  I have actually worked through some wxErlang and agree that WxWidgets can produce a decent user interface but as you said there is a cliff there.  I am trying to avoid getting bogged down in learning wxWidgets.  My preference is a stand-alone application but it looks like that is not really going to be possible.  My genetic programming code is in Erlang and I must say it was a joy to implement it there.  Out of curiosity and for comparison of languages I implemented it in both C++ and Erlang at the same time.  The Erlang was less effort to get right and ended up being a fraction of the code.  The C++ version still has issues (memory issues mostly) and crashes more often than not.  I had originally implemented it in C++ but after getting exposed to Erlang was convinced it would work better.  As I said I implemented it in Erlang and re-implemented it in C++.  Sure the C++ is faster but doesn’t work 100% yet.  Erlang works wonderfully.  A point to note here is that I have been working in C/C++ for both desktop and embedded development for 20+ years and was actually shocked that as a novice in Erlang I was able to implement it better there than in C++ where I am much more experienced.

 

Sorry for the digression.  Most likely I will end up using C# to implement my GUI and connect to the Erlang using a port or TCP. 

 

Again, my thanks to you and others for your advice.

 

Alan

 

From: Joe Armstrong [mailto:erlang@REDACTED] 
Sent: Thursday, December 07, 2017 07:50
To: Alan Gingras <alangingras@REDACTED>
Cc: Sergej Jurečko <sergej.jurecko@REDACTED>; Zachary Kessin <zkessin@REDACTED>; Erlang <erlang-questions@REDACTED>
Subject: Re: [erlang-questions] GUI development with Erlang

 

If you want something that just works and is reasonably simple to implement

Browser based GUI's are pretty good.

 

The combination of web sockets + SVG/Canavas/DOM manipulation in JS

is pretty easy to setup and loads of people understand JS/Browser things.

 

Stand-alone outside the browser is tricky.

 

TCL/Tk is really easy to get going and interface (yes it's old but works well)

 

Java Swing is what it is - and if you're good at Java might be an alternative

but you'd have to interface it to Erlang.

 

QT is brilliant but you'd need to write the GUI in C++ and interface it to Erlang

 

WxWidgets is actually pretty good but has a steep learning curve (a cliff) -

I did actually manage to build some interfaces with it and concluded that

it was pretty good but that it needed a *lot* of examples and getting started

tutorials.

 

Cheers

 

/Joe

 

 

On Wed, Dec 6, 2017 at 12:43 PM, Alan Gingras <alangingras@REDACTED <mailto:alangingras@REDACTED> > wrote:

Thanks for the suggestion.  I've been trying to keep the work totally in Erlang.  Partly because I am trying to become better with Erlang itself and partly out of stubbornness.  I had looked at using a browser based GUI but for what I'm doing I really don't want (or need) to be too complicated.  One of the other responses suggested using C# to create the front end and communicate with Erlang via TCP.  I had thought of that as well, but decided to pursue using pure Erlang but have become stymied by wxErlang and its difficulty.  Most likely I will end up pursing the C# (or similar) front end.

 

Alan

On December 6, 2017 at 3:04 AM Zachary Kessin <zkessin@REDACTED <mailto:zkessin@REDACTED> > wrote:

I had thought it would be an interesting idea to build a GUI toolset around Erlang such that each widget on screen was a process. That being said I think to develop such a toolkit would probably cost on the order of $1,000,000 (Total guess on the number).

 

If I had to develop a desktop app with Erlang I would probably use something like Electra to do a virtual browser with an Elm Frontend.

 

Zach

  <https://mailfoogae.appspot.com/t?sender=aemtlc3NpbkBnbWFpbC5jb20%3D&type=zerocontent&guid=bbf5f505-2549-4a38-a6fd-29b8e0f717f4> ᐧ

 

On Tue, Dec 5, 2017 at 10:13 AM, Sergej Jurečko <sergej.jurecko@REDACTED <mailto:sergej.jurecko@REDACTED> > wrote:

What we did when we wanted to ship a GUI app with Erlang was running erl in the background and communicate over stdin/stdout. 

 

Regards,

Sergej

 





On 5 Dec 2017, at 09:07, Alex S. <alex0player@REDACTED <mailto:alex0player@REDACTED> > wrote:

 

For what it's worth, you can always implement your view and controller in something like C#/F#, and your model in Erlang, and hook them up via TCP. Alternatively, there was an Erlang-toF# compiler floating around I believe.

 

2017-12-03 22:43 GMT+03:00 Alan Gingras <alangingras@REDACTED <mailto:alangingras@REDACTED> >:

Has anyone tried using Windows Forms (.net) with Erlang?  This would be in a similar fashion to way Python can use Windows Forms.  On Linux I believe this would be Mono (http://www.mono-project.com/docs/gui/winforms/).  Basically I think I’m looking for something similar to Python’s “import” and C#’s “using” features.  If no one has anything, any hints on how a feature like this might be implemented.

 

Basically, I have been working on implementing genetic programming in Erlang and would like to provide a GUI front end.  The WxWidgets front end that comes with Erlang is difficult at best.  I’ve used several different GUI kits on *nix and Windows platforms but WxWidgets seems the most difficult for me.  So I’m trying to see what else is available.  I followed Joe Armstrong’s quest earlier this year and didn’t see where he came up with anything.

 

Thanks.

Alan


_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED <mailto:erlang-questions@REDACTED> 
http://erlang.org/mailman/listinfo/erlang-questions

 

_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED <mailto:erlang-questions@REDACTED> 
http://erlang.org/mailman/listinfo/erlang-questions

 


_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED <mailto:erlang-questions@REDACTED> 
http://erlang.org/mailman/listinfo/erlang-questions





 

-- 

Zach Kessin

Reduce project risk with training in Elm For web teams

Skype: zachkessin

+972 54 234 3956 <tel:+972%2054-234-3956>  / +44 203 734 9790 <tel:+44%2020%203734%209790>  / +1 617 778 7213 <tel:(617)%20778-7213> 

 

_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED <mailto:erlang-questions@REDACTED> 
http://erlang.org/mailman/listinfo/erlang-questions


_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED <mailto:erlang-questions@REDACTED> 
http://erlang.org/mailman/listinfo/erlang-questions

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20171209/da10e3a2/attachment.htm>


More information about the erlang-questions mailing list