[Lazarus] WebAssembly

Michael Schnell mschnell at lumino.de
Mon Nov 14 11:26:13 CET 2016


On 11.11.2016 23:27, Lars via Lazarus wrote:
>
> I understand the desire to just take existing LCL app and port it to the
> web browser, but that's a pipe dream, because browsers will be in
> sandboxes that just don't work like client applications on Ms Windows,
> BSD/Linux.
Not really.
Of course it's obvious that stuff like file access can't be done in the 
virtual machine (or maybe it only can be done if the browser's 
parameters are set to allow to do so, which supposedly normally is not  
given).

The real (pipe) dream is a behavior similar to the "pipe dream" 
Silverlight promised for C#:
Take a C# application that can run on a desktop (or any mobile device) 
and add certain definitions to the project (source code and/or project 
settings) and with this split the application in a part that runs on the 
server (behind the Web Server) and another part that runs in the 
browser. The communication between the parts is done automatically by 
the infrastructure. Here file access etc (usually) will be desired at 
the server site and not in the "sandbox".

Of course this is a far goal, but a more manual way, having the 
programmer move the "browser" part in it's own units compilable to 
WebAssmbly and runnable in the "Sandbox", and to add code to call the 
communication functionality would be a decent step.

> Another option is just to use a separate widget set and see how that
> works, such as fpGUI widget. But I guess that means you can't as easily
> take an existing app and port it.

Of course this would be a decent *additional* option (as FireMonkey is 
with Delphi XE), but the "Lazarus" way would be to allow the user to go 
on using the GUI builder (s)he is trained to use in the best possible way.

I just found that Lazarus now shows "Restriction" notes for all element 
used in the GUI builder to take account for different possible targets 
(WidgetTypes). Once this feature is decently supported a check for 
"sandbox-runability" can be provided.

-Michael


More information about the Lazarus mailing list