Pas2js - Abstimmung nächstes Sprachfeature

Für Dinge zum Forum, Kritik, Verbesserungsvorschläge, Umfragen und ähnliches.
Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

mschnell hat geschrieben:Die Frage ist, ob man nicht aufbauend auf dem mit pas2js erreichten auf WebAssembly umschwenken sollte.


Ich habe derzeit keine Pläne auf webassembly zu wechseln. Die grossen Browser sind ja nicht die einzigen JS Engines. Geschwindigkeit ist derzeit unsere geringste Sorge. Wobei der Speedup wohl meist eh nicht dramatisch ist.
Webassembly ist interessant als target für fpc. Dann stellt sich die Frage, wieviel von der fpc RTL auf der webassembly Platform laufen würde. Vermutlich ähnlich was die pas2js RTL bietet.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von mschnell »

Mattias hat geschrieben: Vermutlich ähnlich was die pas2js RTL bietet.

Das wäre ja die Hoffnung, dass man nicht etwas völlig separates braucht, sondern ein bis auf den Code-Generator im Compiler identisches "Target" hat.

Es wäre doch erstaunlich, wenn die Browser für Webassembly eine deutlich andere (GUI-) Library Schnittstelle zur Verfügung stellen würden als für Java Script.

-Michael

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von marcov »

Christian hat geschrieben:Ich würd mir als nächstes ein neues fpc und lazarus Release wünschen.
Für mich wirds zeit das sowohl pas2js als auch die IDE Intrgrationen in einer Stable landen :)


Major FPC releases kosten typisch ein Jahr zwischen Branch und tatsächliche Release. Und eine neue major Branch gibst noch nicht.

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

Christian hat geschrieben:Ich würd mir als nächstes ein neues fpc und lazarus Release wünschen.
Für mich wirds zeit das sowohl pas2js als auch die IDE Intrgrationen in einer Stable landen :)


Derzeit gibt es noch mehrere pas2js Releases im Monat. Ich denke, die meisten pas2js Nutzer wollen nicht auf die 3-6 Monate von Lazarus warten. Von daher ist es noch nicht sinnvoll, ein pas2js release ins Lazarus release zu stecken.

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mathias »

WebGL wäre noch interessant, da könnte man Animationen auf eine Webseite bringen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

Mathias hat geschrieben:WebGL wäre noch interessant, da könnte man Animationen auf eine Webseite bringen.


Die Unit WebGL ist gerade im Aufbau. Im trunk gibt es eine Version, die schon recht weit ist.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von mschnell »

Ist es denkbar und/oder sinnvoll mit Webgl und einem GL-basierten LCL "Widget-Type" (ist das mit "fpGUI" oder "CustomDrawn" möglich? ) mit der Lazarus IDE Oberflächen zu gestalten, die sowohl auf dem Desktop wie auch im Browser laufen ?

-Michael
Zuletzt geändert von mschnell am Fr 18. Mai 2018, 10:18, insgesamt 1-mal geändert.

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

mschnell hat geschrieben:Ist es denkbar und/oder sinnvoll mit Webgl und einem GL-basierten LCL "Widget-Type" (ist das mit "fpGUI" oder "customDrawn" möglich? ) mit der Lazarus IDE Oberflächen zu gestalten, die sowohl auf dem Desktop wie auch im Browser laufen ?


Denkbar ist es, aber ich bezweifle, dass es sinnvoll ist.
1. Es gibt noch kein GL-basiertes LCL WS. So weit ich weiss, kann fpGui kein OpenGL.
2. WebGL und OpenGL haben zwar gleiche Konzepte, werden aber unterschiedlich programmiert.
3. Eine WebGL GUI würde auf das mächtige CSS verzichten und all die netten Debugging Tools heutiger Browser.
4. Die Einbindung von JS Frameworks wäre schwer bis unmöglich.

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

mschnell hat geschrieben:Ist es denkbar und/oder sinnvoll mit Webgl und einem GL-basierten LCL "Widget-Type" (ist das mit "fpGUI" oder "customDrawn" möglich? ) mit der Lazarus IDE Oberflächen zu gestalten, die sowohl auf dem Desktop wie auch im Browser laufen ?l


Eher sinnvoll wäre es, ein Web WS für die LCL zu schreiben.
Dafür muss als erstes die LCL UTF-16 unterstützen und ohne PChars auskommen.

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mathias »

1. Es gibt noch kein GL-basiertes LCL WS. So weit ich weiss, kann fpGui kein OpenGL.

Ich kürzlich gelesen, das Qt Creator Steuerelemente in OpenGL realisiert, ob dies stimmt, kann ich nicht sagen.

2. WebGL und OpenGL haben zwar gleiche Konzepte, werden aber unterschiedlich programmiert.

Davon habe ich auch schon gehört, das zB. unter Windows die Ausgabe über DirektX erfolgt.

Die Unit WebGL ist gerade im Aufbau. Im trunk gibt es eine Version, die schon recht weit ist.

Dies tönt sehr gut.
Somit könnte man folgende Animation mit Lazarus entwickeln: http://mathias1000.bplaced.net/VLI/index.html
Steuerelemente können klassisch in HTML-Stil sein.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von mschnell »

Mattias hat geschrieben:1. Es gibt noch kein GL-basiertes LCL WS. So weit ich weiss, kann fpGui kein OpenGL.

Schade !

Mattias hat geschrieben:2. WebGL und OpenGL haben zwar gleiche Konzepte, werden aber unterschiedlich programmiert.

Das müsste der entsprechende Code im Widget-Type berücksichtigen.

Mattias hat geschrieben:3. Eine WebGL GUI würde auf das mächtige CSS verzichten und all die netten Debugging Tools heutiger Browser.
4. Die Einbindung von JS Frameworks wäre schwer bis unmöglich.

Um das zu verstehen, bin ich nicht genug mit der Materie vertraut.

Wie offensichtlich ist, zielt meine Frage darauf, Super-Dummies wie mir zu erlauben, Applikationen lokal unter Lazarus zu entwickeln (und bereits vorhandene zu portiere) und dann im Browser laufen zu lassen, idealerweise mit in der Library verfügbarer Anbindung an einen "hinter" einem Webserver laufen GUI-losen zweiten Teil der Anwendung (everlasing Pipe-Dream, an dem schon Microsoft mit Sivlerlight gescheitert ist).

-Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von mschnell »

Mattias hat geschrieben:Dafür muss als erstes die LCL UTF-16 unterstützen

??? Browser können doch auch UTF-8 ??? Oder nicht.

-Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von mschnell »

Mathias hat geschrieben:Davon habe ich auch schon gehört, das zB. unter Windows die Ausgabe über DirektX erfolgt.

??? Wenn es benutz wird, liegt DirectX doch "hinter" GL. Da sollte "vorne" die User API von GL nicht von beeinflusst sein ???


Sehr hübsch ! Erkenntnis: in FireFox auf Linux Mint6 in Virtual Box kommt: "WebGL nicht gefunden. Grafik-Treiber, Browser oder Gafikkarte veraltet".

Virtual Box muss aufrüsten !

-Michael

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

mschnell hat geschrieben:Das müsste der entsprechende Code im Widget-Type berücksichtigen.


Wie gesagt: denkbar, aber nicht sinnvoll.

mschnell hat geschrieben:Wie offensichtlich ist, zielt meine Frage darauf, Super-Dummies wie mir zu erlauben, Applikationen lokal unter Lazarus zu entwickeln (und bereits vorhandene zu portiere) und dann im Browser laufen zu lassen, idealerweise mit in der Library verfügbarer Anbindung an einen "hinter" einem Webserver laufen GUI-losen zweiten Teil der Anwendung (everlasing Pipe-Dream, an dem schon Microsoft mit Sivlerlight gescheitert ist).


War offensichtlich nicht offensichtlich.

"Bereits vorhandene" heißt vermutlich eine LCL App. Dafür braucht es ein Web widgetset und die LCL muss im Browser laufen, d.h. strings sind UTF-16 und Verzicht auf Pointer Arithmetik. Jemand muss sich halt die Arbeit machen.

Mattias
Lazarusforum e. V.
Beiträge: 175
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Pas2js - Abstimmung nächstes Sprachfeature

Beitrag von Mattias »

mschnell hat geschrieben:
Mattias hat geschrieben:Dafür muss als erstes die LCL UTF-16 unterstützen

??? Browser können doch auch UTF-8 ??? Oder nicht.


JS Quelldateien sind UTF-8, aber JS selbst läuft mit UTF-16.

Antworten