Penrose is a neat name for this. At first I thought it was not a great choice because of other associated concepts. Then I noticed pen=write, rose=draw. Maybe not intentional, but cute.
roger penrose is a famous mathematician, who did a lot of work in mathematical physics. he is also famous for a highly visual approach, such as penrose tiles.
Just to close the loop here, Penrose is also famous (to his readers, anyway) for his beautiful hand-drawn diagrams and illustrations. So it’s a terrific name for this project.
And has five-fold symmetry, which is impossible for wallpaper groups.
The discovery of Penrose tilings is partially tangled up with the discovery of quasicrystals, where researchers found minerals with 5-fold and 10-fold symmetry that ought to have been mathematically impossible to exist. Turns out that the Crystallographic Restriction Theorem has an important caveat that people neglected up until the 1980s: it assumes that you have to have translational symmetry, which Penrose tilings do not.
In my mind, it was obvious that I was thinking of this: https://mathworld.wolfram.com/Rose.html. Clearly I should have mentioned that. It's the type of shape drawn by a spirograph, a pen-rose.
penrose is the name of a famous mathematician/logician, so it's a double entendre on both it being for drawing (the pen and the rose), as well as it being for maths.
It's not based just on text code, but on interactive manipulation as well, so it's not like e.g. TikZ which can be kept in the document source and version controlled, etc.
An analogy would be the weights of pretrained machine learning models. They're still serializable, though it's true they're less semantically trackable than a well-written TikZ snippet (which, by the way, I haven't seen many of in practice!)
"Designers write programs that produce figures described in terms of relationships. These relationships are compiled down to constraints, which are then solved automatically."
It is an interesting approach to drawing - it’s almost like what you do is, you make the tool understand the meaning of what you want to draw, and the tool is expected to do an optimal job at getting it done.
It looks like a cool project and they say it's still in early stages. It's a pity they don't put pictures on the splash page. Pictures communicate better than anything else what the capabilities of the tool are.
I think a README.md with the render in each directory would be useful or maybe one README.md in the examples dir that refers to each example with a bit of context of why it might be something to do/use would suffice?
Looks cool, though.