1. 34
  1. 6

    Wow, this is incredibly cool! I like a few things about this project:

    • Declarative, textual representation of diagrams. You don’t spend time messing around with visual design tools, but specify relationships between shapes. And it looks like they use a solver to optimize your constraints.
    • Separation of structure and visuals - their example of the sets and subsets, with 3 different types of visualizations is awesome.
    • The ability to define notation and build up more complex structures. The extensibility could make Penrose suitable for a wide variety of domains.

    I’d love to try it out, though I gather that the tool is not ready for the general public. Thank you for sharing!

    1. 5

      Really cool! It is unfortunate that the name is a bit misleading, though. If you write “Penrose” and “diagrams” in the same sentence and the thing is not about Penrose diagrams [0] you are going to deceive quite a lot of people. Also, if you write “Penrose” and “notation” and the thing is not about Penrose graphical notation [1], you are going to deceive quite a lot of people. There’s just so many detection that could be easily avoidable here!

      [0] https://en.wikipedia.org/wiki/Penrose_diagram

      [1] https://en.wikipedia.org/wiki/Penrose_graphical_notation

      The name “Penrose” sends quite a wrong message in this context. Either the people who chose this name did not know about Penrose notation nor Penrose diagrams, in that case I have a hard time taking them seriously; or they did know and they thought that nobody would be bothered by their misleading usage or name clash. In the latter case I have an even harder time taking them seriously. And this is unfortunate because this is such a cool graph drawing language!

      1. 2

        I agree that the name will make it harder to discover/search for it, but I wouldn’t take them any less serious if they didn’t know about either of those name clashes. I guess the market research for academic open source software that is still in the research phase is rather limited. Maybe they’ll change it, if the project is still in the early phase.

      2. 3

        Definitely awesome. Just the other day I was talking to my dad about how a lot of things (we were talking about fourier transformations specifically) make so much more sense if you get a visual intuition about them, and this seems to deliver that rather easily!

          1. 1

            Yeah. Really should have been auto-merged at submission time, I think… @pushcx can you lend a hand?

          2. 2

            Looks cool, but the animations don’t really add any new information. They just seem to make the appearance of the diagram take a bit longer.

            1. 1

              I initially thought so as well, however, it seems that perhaps the “animations” are rendering the output as it continues to be optimized. From the linked paper:

              Moreover, though it may take time for diagrams to finish, the optimization-based approach provides near-instantaneous feedback for most diagrams by displaying the first few steps of the optimization process. These proto-diagrams typically provide enough information about the final layout that the user can halt optimization and continue iterating on the design.

              1. 1

                Fair enough, thanks for the reply!

            2. 1

              Sometimes living in the future is great! I consistently underestimate how much work drawing a good diagram is, so this tool could save a lot of time if it’s flexible enough.