"Parse, don't validate" through the years with C++

(derekrodriguez.dev)

39 points | by dwrodri 2 days ago

5 comments

  • bregma 1 hour ago
    Author has used LLMs to generate Java code in C++. It detracts from his point.
  • jsymolon 1 hour ago
    First thought, assuming that birth year starts at 1900 is bad for a number of reasons; one of which, "process this list of authors and ..."

    What about everyone born before 1900?

    • alpinisme 1 hour ago
      It’s a contrived example. And I have to assume the author intended it to be contrived given that he also put an upper bound at 1999 in an article written in 2026 in an industry that skews young.

      But the pattern applies regardless of the validation logic.

    • Neywiny 1 hour ago
      Or what if they were born after 1999?

      It's just a toy example not a production ready birthday validation library.

    • psychoslave 32 minutes ago
      Assuming it is necessarily known which is the birth year of anyone assumed to have been in existence is already a big hypothesis if we go in that direction.
  • actionfromafar 24 minutes ago
    Disregarding the article for a second, has anyone else had the pattern that "parse don't validate" makes sense in object oriented style, but less sense in functional style programming? Like parsing and validating blurs into each other.
    • LittleLily 9 minutes ago
      In my experience it makes even more sense in functional programming languages, not less, since they usually also have more powerful type systems that help with actually representing parsed vs unparsed data.
  • rienbdj 2 hours ago
    C++ could use some do-notation