The following is a reply to an old e-mail message sent to gimp-devel that
has been bit rotting for some time in my drafts folder.
Andreas Posur wrote:
Many thanks for contributing to G.I.M.P
yw
I heard lots of different complains about working with scheme for
GIMP (mostly: ugly interface and "unsexy") Scheme (TinyScheme/Fu and
as well SIOD) are not up to date nor do they feature some stuff which
is meanwhile often requested (such as) intensive (unit) testing...
SIOD was old and didn't really follow existing Scheme standards. TinyScheme
is meant to be tiny, or at least small, and will be seen as missing features
when viewed by those used to a full-blown Scheme implementation such as Guile.
There are a couple of scripts for testing Scheme implementations for
compatability with R4RS and R5RS. TinyScheme can't run the R5RS tests as it
doesn't support define-syntax. It does quite well running the R4RS tests
when you take in to account the lack of support for things like complex
numbers and big numbers.
The "Programming Languages Teaching Team" is reshaping their version
of scheme to another much less misunderstood name on Google called
"Racket". They will feature their implementation of R6RS Standard
Thank you for the information on Racket. It looks interesting but it would
be too big to include with GIMP.
How
difficult could it be to write at least a GIMP (Tiny-Fu I don't think
we would need tinyscheme that bad, but perhaps I'm wrong) rewrite
perhaps together with M. Felleisen and his crew to get this "not so
much convenient" method to do effective scripting updated (upgraded).
[snip]
You will find the whole discussion here:
http://list.cs.brown.edu/pipermail/plt-dev/
I don't understand what you are asking. The link to the discussion is just a
link to the entire mailing list archive for PLT. If you have a direct link
to the message thread I will look at it. I'm not going to dig through their
archives to find the discussion you wanted me to look at.
GIMP will have crucial feature changes (GEGL) with 3.0 and with
Scheme/Racket we could to try to automate and enhance them for the
greater good of people. PLT-Scheme coding is such much more
comfortable and no it is not that "power-limited"...
Every so often someone suggests that Script-Fu should use some more
full-featured version Scheme implementation. It's fine to suggest such a
thing but you have to keep a couple of things in mind.
Is the proposed implementation of Scheme available for all environments that
can run GIMP? How big is the implementation and can it be embedded with
Script-Fu?
Most of the more "complete" implementations of Scheme are too big and
contain features not needed for basic scripting and automation of GIMP. If
someone can propose additions to TinyScheme to add any "needed" features, or
knows of a more full featured Scheme interpreter that isn't a lot bigger
than TinyScheme, I would be interested to look at the proposal.
For GIMP 3.0 I would like to get the changes I have planned for version 2 of
Tiny-Fu in as the new Script-Fu which will make it easier to use alternative
Scheme interpreters.