Howdy GIMP developers,
I'm a contributor to GNU Guile, which put out a major new release in
February, and I'm wondering if there might be a use case in GIMP for
Guile. Guile 2.x sports a new garbage collector, a virtual machine,
multithreading support, and compiler front-ends for several languages
in addition to R6RS Scheme. It's also at least an order of magnitude
faster than previous releases.
I've done some work on a patch that adds an optional build of
Script-Fu that uses Guile instead of TinyScheme. It's capable of
handling some of the differences between R6RS and the variant of R4RS
that TinyScheme implements -- enough to run the Spyrogimp script, for
example -- but not yet all of them.
Do you all think there's value in proceeding with this type of
integration? Could Guile potentially replace TinyScheme as GIMP's
core Scheme implementation? I understand there's a historical
requirement for having a bundled Scheme implementation that's
guaranteed to build on the same set of platforms that GIMP does -- but
there's been a lot of compatibility work done on Guile over the past
several years, and Guile uses Gnulib, the GNU portability library, to
be as portable as possible.
Or would a separate, independent plugin implementation with an
architecture similar to PyGimp's make more sense?
Let me know if you'd like me to go into detail on the work I've done
so far or if you'd like more information on the featureset of Guile
2.x. I'm happy to pitch people on how Guile could benefit GIMP!
Gimp-developer mailing list