• hfjidufu 9 months ago

    Great post.

    I enjoy the almost Oliver Burne[0] meets Mondrian[1] like outputs of Duckering's implementation, but appreciate the simplicity of the author's as well.

    Excellent linked resources for anyone interested in using programming to illuminate mathematics.

    [0] https://en.wikipedia.org/wiki/Oliver_Byrne_(mathematician)

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

  • cwmoore 9 months ago

    Your post goes a lot farther, but the Pappus Chains reminded me of the Method of Apollonius that I have used to generate nested yinyan symbols with JavaScript.

    • xrd 9 months ago

      Really fun, and the link to the numberphile video is great, too.

      • wesliejoe 9 months ago

        [flagged]

        • xiaodai 9 months ago

          Python is a very poor choice for such a tool. Julia should have been used

          • randrus 9 months ago

            In case this is relevant to your reasons for posting … every time I see one of the fact free posts the slam Python to promote Julia it pushes me further from considering Julia for anything.

            • bbor 9 months ago

              Obviously the comment above is far from helpful in tone or content, but this spurred me to look it up. As a python guy, my takeaways are:

              1. It’s designed by mathematicians specifically for math.

              2. It has much better support for generic/runtime types, something the academics apparently describe using the terms “parametric polymorphism” and “multi-dispatch”.

              Plus there’s this cute founding ethos blog post from 2012, though it’s necessarily vague: https://julialang.org/blog/2012/02/why-we-created-julia/

              None of that sounds even close to convincing me to switch from Python, but I can see the appeal for people who value those typing features and want something faster.

              I don’t necessarily see the connection between either of those things and the implementation above, tho… presumably it’s basically instant, anyway?

              • __MatrixMan__ 9 months ago

                I would be more likely to pick up Julia if comments like gp told me something interesting about the language.

                • bgoated01 9 months ago

                  The biggest thing that keeps me from using Julia rather than Python for math prototypes is that it uses one-based indexing. I go back and forth between these prototypes and my C++ codebase, and the mental gymnastics to switch from 0-based to 1-based makes Julia a non-starter for me. I prefer Julia over Python other than that one issue, and the lower availability of tutorials, etc. for Julia.

                  • lupire 9 months ago

                    Index all your arrays with from_offset(n)

                    def from_offset(n: int): return n+1

                    Well-typed (or sightly-better-typed) programming ftw.

                • xiaodai 9 months ago

                  I am sorry. I am autistic.

                • jazzyjackson 9 months ago

                  So post a link about making cool hyperbolic SVG with Julia