• @[email protected]
    link
    fedilink
    -12 days ago

    There’s a built-in feature that Perl has that only a few of the languages claiming PCRE have actually done, and it makes things a lot more readable. The /x modifier lets you put in whitespace and comments. That alone helps a lot if you stick to good indentation practices.

    If all other code was written like an obfuscated C contest, it would be horrible. For some reason, we put up with this on regex, and we don’t have to.

    https://wumpus-cave.net/post/2022/06/2022-06-06-how-to-write-regexes-that-are-almost-readable/index.html

    • @[email protected]
      link
      fedilink
      02 days ago

      I agree, but then there’s also some other niceties that come from expression parsers in the language itself (as noted in the article): syntax highlighting, LSP, a more complete AST for editors like helix.

      • @[email protected]
        link
        fedilink
        02 days ago

        Syntax highlighting works fine as long as your language has a way to distinguish regexes from common strings. Another place where Perl did it right decades ago and the industry ignored it.

        • @[email protected]
          link
          fedilink
          12 days ago

          Nah, the language itself should be as simple as possible. Bloating it with endless extensibility and features is exactly what makes Perl a write-only language in many cases and why it is becoming less and less relevant with time.

          • @[email protected]
            link
            fedilink
            12 days ago

            Except it has some really good ideas that should be copied. There are other languages that have a syntax for denoting regex, such as ~r'foo' in Elixir. This gets the syntax highlighting you need without a big addition to the language.