From michael at freepascal.org Sun Sep 4 11:39:57 2022 From: michael at freepascal.org (Michael Van Canneyt) Date: Sun, 4 Sep 2022 11:39:57 +0200 (CEST) Subject: [Lazarus] WebAssembly support for DOM access Message-ID: Hello, Thanks to the sponsoring by Tixeo, the FPC & Lazarus team has developed a pretty unique feature for the FPC WebAssembly support. Webassembly is a bytecode format and embedding specification that allows you to load and run compiled code into the browser in a restricted environment. It is supported by all major browsers. You can also run webassembly bytecode in command-line tools such as wasmtime or even in an FPC program, using the wasmtime library. By itself, WebAssembly has no access to its environment. It can only use what the environment provides: file access, DOM acces etc. If the environment defines it, WebAssembly can use it. The webassembly specification only defines a mechanism to import/export routines from/to the environment in which it runs. The browser has a rich environment, which it does not (yet) expose to the WebAssembly world. Which is a pity, because this limits the usefulness of WebAssembly in the browser considerably. FPC has now developed a protocol which allows you to use all Browser APIs by the JOB (Javascript Object Bridge) mechanism, in particular the DOM functionality. This allows you to build a UI (using HTML) for webassembly programs running in the browser: one can imagine running Lazarus in the browser... More info about this unique feature can be found in the Wiki: https://wiki.freepascal.org/WebAssembly/DOM To my knowledge, the only other programming language to offer this kind of general support for browser API access from webassembly is Rust. Enjoy, Michael. From sysrpl at gmail.com Tue Sep 13 14:43:49 2022 From: sysrpl at gmail.com (Anthony Walter) Date: Tue, 13 Sep 2022 08:43:49 -0400 Subject: [Lazarus] Improving my Pascal Simulation with a Fragment Shader Message-ID: I am writing some demos for my Tiny Sim library and also teaching kids programming. I wrote an interesting tutorial that is a good introduction to writing fragment shaders and thought I'd share it with you guys on this forum. https://www.getlazarus.org/pool/rendering/ I hope you find it educational and interesting. -------------- next part -------------- An HTML attachment was scrubbed... URL: From nc-gaertnma at netcologne.de Wed Sep 28 08:28:03 2022 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Wed, 28 Sep 2022 08:28:03 +0200 Subject: [Lazarus] Lazarus Release 2.2.4 Message-ID: <20220928082803.09637b50@limapholos> The Lazarus team is glad to announce the release of Lazarus 2.2.4. This is a bugfix release and was built with FPC 3.2.2. Here is the list of changes for Lazarus and Free Pascal: http://wiki.lazarus.freepascal.org/Lazarus_2.2.0_release_notes http://wiki.lazarus.freepascal.org/User_Changes_3.2.2 Here is the list of fixes for Lazarus 2.2.x: https://gitlab.com/freepascal.org/lazarus/lazarus/-/commits/fixes_2_2 The release is available for download on SourceForge: http://sourceforge.net/projects/lazarus/files/ Choose your CPU, OS, distro and then the "Lazarus 2.2.4" directory. Checksums for the SourceForge files: https://www.lazarus-ide.org/index.php?page=checksums#2_2_4 Minimum requirements: Windows: 2k, 32 or 64bit. FreeBSD/Linux: gtk 2.24 for gtk2, qt4.5 for qt, qt5.6 for qt5, 32 or 64bit. Mac OS X: Cocoa (64bit) 10.12, Carbon (32bit) 10.5 to 10.14, qt and qt5 (32 or 64bit). The gitlab page: https://gitlab.com/freepascal.org/lazarus/lazarus/-/tree/lazarus_2_2_4 For people who are blocked by SF, the Lazarus releases from SourceForge are mirrored at: ftp://ftp.freepascal.org/pub/lazarus/releases/ Mattias