siod (Script-Fu) string-length limitations
I've been experimenting with building a L-systems script-fu, but have hit a
seemingly insuperable obstacle. It seems that there's a built-in limitation
in siod that prevents strings from exceeding somewhere between 4050 and 4094
bytes. Since L-systems are basically string-rewriting systems, with the
strings getting longer at each rewrite, this arbitrarily low limit is a real
PITA. Indeed, it's a show-stopper.
Despite the known annoyances of trying to do string handling in any lisp-like
language, I started out using the scheme script-fu instead of perl in hopes of
making the resulting script usable on windoze machines as well as Linux boxes.
But when I finally got things working, the interpreter just dies/hangs when
the strings start getting too long. There are no error messages, no core
dumps, no segfaults -- it just stops, silently.
So my questions are:
(1) Is the specific version of siod that the GIMP uses documented anywhere?
(2) Is there a sensible workaround for the (apparently) limited string length?
(3) Is there a way to extend the GIMP's version of siod's capabilities to
allow strings of arbitrary (large, very large) length in 1.4? (Or, even
better, in 1.2.x?)