On 1/24/17, John Spikowski <supp...@scriptbasic.org> wrote:
> On Tue, 2017-01-24 at 13:45 -0800, Eric Wing wrote:
>> On 1/24/17, John Spikowski <supp...@scriptbasic.org> wrote:
>> >
>> > Eric,
>> >
>> > Your right and what I'm after isn't a solution for the generic C
>> > IUP
>> > user. I wrap IUP as an extension module in a FFI based interface. I
>> > have had success with IUP running threaded. Scripting reduces
>> > complexity and reuses resources by design.
>> >
>> > John
>> >
>> Okay, so I think we’re on the same page now.
>
> I think we are on the same page about me emulating IUP functions for
> the web so I can use my desktop FFI C based IUP code without
> modification.

So maybe we're still not exactly on the same page...
So the idea behind IUPEmscripten is that it is a real native web
browser backend for IUP. It is not emulation.

But I hope we are on the same page in that I'm just trying to express
that you can write a simple traditional IUP GUI app in Script BASIC,
and it will work both natively on Windows and Linux (as it does today)
and also in the web browser. And you won't need really need to do
anything special for the web browser version; same exact code as your
Windows/Linux version.




> The Script BASIC HTTPD server is very efficient / fast and runs my
> desktop (non-UI) code without modification. I wouldn't even consider
> compiling it to JavaScript.

So the idea I'm trying to express is that your IUP GUI app doesn't
need an HTTPD server at all. I'm basically just trying to save you
from doing extra work that can be avoided. If you want to do that
extra work, that's fine, but I want to be clear that you understand
that you don't have to with IupEmscripten.


Like the Hello World Dialog + Button app I showed. It is an IUP GUI
app that runs on Windows, Linux, Raspberry Pi, Mac, iOS, Android, and
the web browser. In no case did I need to make any code changes or add
an HTTPD server or need any network communication of any kind.

Once I wrote my IUP program, to build a native Linux binary I basically did:
gcc <flags> *.c <more flags>

For Emscripten, it was just:
emcc <flags> *.c <more flags>

No code changes. No design changes. No conceptual changes. Just a
compiler substitution.


You don't need an HTTPD server just to make an IUP GUI program work in
the web browser. So if you don't need the server, you don't need to
convert it to JavaScript.

Also, most servers are headless/GUI-less. (There are cost,
distribution, resource, and security reasons for that as you scale
up.) If you still need a HTTPD server for your client to talk to
because your application requires it (e.g. Twitter-like
client/service), that should be a standalone command-line tool/daemon
that can run on a server somewhere. You still can write that in Script
BASIC as you've always done and doesn't need to be put in the web
browser. So again, you don't need to convert that to JavaScript either
since it runs on a server and not the web browser. This is a separate
program from your IUP based GUI client.


> I'll post a Windows and Linux desktop example using the same code base
> for a browser example. I would appreciate your feedback once that is
> done.

Okay, sure. Though as I mentioned, I don't know anything about Script
BASIC. I'm not sure how helpful my feedback will be.

-Eric

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to