That's a great point!

I will add a reference to the Kawa's picture-language into the srfi.
Would you like to contribute an implementation of SICP's picture language on top of Kawa's?


On Thu, 9 Jul 2020 at 13:43, Per Bothner <xxxxxx@bothner.com> wrote:
FWIW Kawa has its own picture language.
Its procedures are functional, like SICP, in that
the results are abstract side-effect-free "picture values"
that can be combined using transformations, composition, etc.

SICP combines the concepts of (affine) transformation and bounding box
into a single concept of a "frame",  The Kawa picture model separates
bounding box and transformation in a way that I believe is more
flexible and more in tune with modern 2D APIs.

https://www.gnu.org/software/kawa/tutorial/Pictures.html (introduction, incomplete tutorial)
https://www.gnu.org/software/kawa/Composable-pictures.html (reference)

Note the examples show picture-valued expressions being evaluated
and printed by the Kawa REPL, using the DomTerm terminal emulator.
For example (draw (circle 30)) is not a command to draw a circle.
Instead it creates a picture of a (non-filled) circle that may be
printed or further transformed.  The Kawa REPL when running under
DomTerm then renders the resulting picture value as SVG.
--
        --Per Bothner
xxxxxx@bothner.com   http://per.bothner.com/


--
Yours sincerely, Vladimir Nikishkin