• wewbull@feddit.uk
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    2
    ·
    5 months ago

    Furthermore there are many changes to NumPy internals, including continuing to migrate code from C to C++, that will make it easier to improve and maintain NumPy in the future.

    I realise that C can be rather low level a lot of the time, but I’m not sure I’d pick C++ to help keep things easy to maintain. It opens up a Pandora’s box of possibilities.

    • cbarrick@lemmy.world
      link
      fedilink
      English
      arrow-up
      18
      arrow-down
      2
      ·
      edit-2
      5 months ago

      With a good style/best-practice guide, C++ can be quite productive of a language to work with.

      Those kinds of guides typically define which standard/convention to use and which features not to use (cough exceptions cough).

      I highly recommend Google’s C++ style guide: https://google.github.io/styleguide/cppguide.html.

        • cbarrick@lemmy.world
          link
          fedilink
          English
          arrow-up
          21
          arrow-down
          1
          ·
          5 months ago

          I intentionally added a period because it was the end of a sentence.

          If your Lemmy app messed it up, then that’s a bug in its markdown parser.

          • rhymepurple@lemmy.ml
            link
            fedilink
            English
            arrow-up
            3
            ·
            5 months ago

            I’m curious about this. The source text of your comment appears that your comment was just the URL with no markdown. For your comment about a markdown parsing bug to be true, shouldn’t the URL have been written in markdown with []() notation (or a space between the URL and the period) since a period is a valid URL character? For example, instead of typing https://google.github.io/styleguide/cppguide.html., should [https://google.github.io/styleguide/cppguide.html.](https://google.github.io/styleguide/cppguide.html) have been typed?

            • cbarrick@lemmy.world
              link
              fedilink
              English
              arrow-up
              4
              ·
              edit-2
              5 months ago

              Huh. This got me curious.

              Yes, I did just type a bare URL. Every mature markdown parser I’ve used turns this into a link, and appropriately handles trailing punctuation.

              So I went to the spec, and it’s explicitly called out that this is not an autolink. Autolinks must be explicitly surrounded with angle brackets <>.

              So yeah \shrug.

              https://spec.commonmark.org/0.31.2/#autolinks

              Edit to be clear: This means that both of our markdown parsers are wrong relative to the commonmark spec. But I’ll argue that if a parser is going to attempt to autolink this, then handling trailing punctuation is better than not.

              • rhymepurple@lemmy.ml
                link
                fedilink
                English
                arrow-up
                2
                ·
                5 months ago

                I did not know about autolinks - thanks for the link!

                It is interesting how different parsers handle this exact situation. I usually am cautious about it because I typically am not sure how it will be handled if I am not explicit with the URL and additional text.

      • wewbull@feddit.uk
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        5 months ago

        Do you think a style guide is enough for an open source code base? Contributions could be coming from lots of directions, and the code review process to enforce a style guide is going to be a lot of work. Even rejecting something takes time.

        • Baldur Nil
          link
          fedilink
          arrow-up
          6
          arrow-down
          1
          ·
          5 months ago

          This kind of thing can be easily automated nowadays. It’s not really a problem.

          • sugar_in_your_tea@sh.itjust.works
            link
            fedilink
            arrow-up
            2
            ·
            5 months ago

            Yup, we do it for Python and Javascript at work, and I do it on my Rust projects (and my older C projects). I don’t see why C++ should be any more difficult.