upvote
Thanks. The code (here: https://fmjlang.co.uk/fmj/tutorials/TOC.html) isn't text, it's directed graphs.
reply
I gave it a try, does it look like it got it right?

https://files.catbox.moe/nbcyg7.png

It's a program that draws the Claude logo.

reply
I don't think it's right but if it got as far as it did it could be corrected after several rewrites, so not a complete failure and not bad for a first attempt given the limited documentation I put on my web pages.

If I'm reading it correctly, polar is a function which is supposed to convert from polar to Cartesian coordinates, and rayPolygon seems to convert a list of polars to a list of Cartesians. But it's unclear exactly what it's doing. Also, there is no fillPolygon or fillEllipse.

reply
Out of curiosity I saved one of the images to my disk (the first image on this page: https://fmjlang.co.uk/fmj/tutorials/IterationAgain.html), then asked LLM about it, without any context:

> prompt: /tmp/iterReverse.png what could this image be?

Thinking:

> Identifying the visual dataflow language from the node layout and iterReverse label, likely Prograph.

> Confirming Prograph identification and mapping node roles to list deconstruction and reconstruction.

Answer:

> This is a Prograph method window, for a method called iterReverse.

> Prograph is a visual dataflow programming language - you program by wiring boxes together instead of writing text. What you're looking at is the implementation of iterative list-reverse:

    - big box = method editor, top pins = inputs, bottom pins = outputs                                                                                                                                                                        
    - black circle top-left = method icon                                                                                                                                                                                                      
    - yellow boxes = controls: start*+, when*+, unless*+, repeat*+                                                                                                                                                                             
    - blue boxes = list primitives: null test, decons split list into head/tail, cons prepend                                                                                                                                                  
    - red lines = data links, green = the small control / boolean wiring
> In other words: if input is null, when succeeds, else unless loops with decons / cons + repeat to build the reversed list.

> The window chrome with Save / Close and that style of drawing is the Marten clone of Prograph running on Linux.

reply
It isn't Prograph, but there are some similarities.
reply