Dear All,
we've decided that it is a good time to start testing ECL before the next release.
You may find the link to associated issue here:
https://gitlab.com/embeddable-common-lisp/ecl/-/work_items/798
if you have time and resources, all help with testing is appreciated.
Thank you,
Daniel
--
Daniel Kochmański ;; aka jackdaniel | Przemyśl, Poland
TurtleWare - Daniel Kochmański | www.turtleware.eu
"Be the change that you wish to see in the world." - Mahatma Gandhi
Hello ECL Devel!
I just wanted to write in and report on some nice success I've had over
the past year, getting my project to run and compile with ECL such that
I can use Godot to build a new front end for it.
My project is a nearly 40 year old project called Boxer [1] that has
gone through numerous platform ports and rendering layer updates (all
the way through symbolics machines up through macs/windows etc).
Currently the stable build uses Lispworks and OpenGL on macOS, recently
I had updated the rendering from using old school openGL to more modern
shader based openGL. However, I'm not really a professional graphics
programmer and was looking for a way to get more multimedia things for
free and as well and cross platform support. After prototypes with lots
of different toolkits, I've been using Godot to build the next visual
frontend on the core functionality and it's been fun using ECL to do
this, although it has been arduous getting here! :)
Part of the reason I chose both Godot and ECL as the lisp distribution
to switch to, is that they both support WASM, which is incredibly
important for me going forward, Kudos to all of Daniels work on the web
assembly.
After copious refactoring and hacking, I've been able to build a shared
library version of all my core functionality to use in a GDExtension
with Godot, as well as a static library version to use in the WASM
version with Godot (and my GDExtension hacked up a bit to be a core
Godot module). And it works! Pretty well, I have a number of rough
edges to work out, but I'm very excited about this going forward.
I know the WASM stuff is still a moving target, and I'm interested in
hearing about how the compiling mechanism will be standardized a bit
more in core. For building a shared library I'm using our
asdf:make-build, and to build the static library targetting WASM I'm
using the asdf-cc.lisp copied from Daniels wecl repo. At the moment I
have my Godot front end with ECL extension working on macOS, Linux, and
Web. At the moment trying to finagle the iOS version.
Let me know if anyone has any questions, comments. Certain parts of
this were quite difficult to wrangle so I am hoping to perhaps
contribute back some documentation or something.
Thanks everyone for all your hardwork on ECL, and making it as
mutliplatform as possible, especially including WASM, it's a real gem of
a project! :)
Cheers,
Steve
[1] https://github.com/boxer-project/boxer-sunrise