[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