15 comments

  • nicoburns 3 hours ago

    The list of "recommended reading" from one of the issues looks great:

    https://github.com/a-e-k/canvas_ity/issues/11#issuecomment-2...

  • msephton 2 hours ago

    The project is great. The HN comments are embarrassing. Isn’t it ironic to imply laziness by chiming in with “vibe coded” which in itself is such a lazy reaction.

  • ddtaylor an hour ago

    Thank you for sharing. The only thing I don't understand why this is a header only implementation with a macro that goes in a C++ file.

        #define CANVAS_ITY_IMPLEMENTATION
    • erwincoumans 12 minutes ago

      It is common for header-only libraries: you need to include this header in one c++ using the macro for linking (don't use that macro in other c++ files to avoid duplicate symbols). In C++, you can declare a function as many times as you want, but you can only define it (write the actual body) once in the entire project.

    • socalgal2 an hour ago

      that's a common pattern in C++ land because there is no standard way to use libraries in C++

      https://github.com/p-ranav/awesome-hpp

  • Lerc 3 hours ago

    It would be interesting to compile to WASM to compare side by side for performance and accuracy.

  • ranger_danger 3 hours ago

    vibe-coded?

    • nicoburns 3 hours ago

      Most likely not seeing as the commit containing the bulk of the implementation dropped in 2022.

      • ranger_danger 3 hours ago

        maybe just the README then

        • flowerbreeze 3 hours ago

          The README is older than ChatGPT too. It's very unlikely that it's vibe coded or vibe written.

    • peter-m80 3 hours ago

      Would that be an issue?

      • Amlal 2 hours ago

        Yes, it's a canvas library, there's a lot of risks of including AI generated code that hasn't been checked in a rasterizing library.

        • ivanjermakov 2 hours ago

          A lot of risks compared to what? I imagine bugs in kernel drivers or disk utilities be riskier.

        • JoeyJoJoJr an hour ago

          Such as?

      • 1bpp 3 hours ago

        Yes.