• Knusper@feddit.de
      link
      fedilink
      English
      arrow-up
      27
      arrow-down
      1
      ·
      edit-2
      1 year ago

      What that garble of symbols does, is that it defines and calls a function named :, which calls itself twice.

      The syntax for defining a function is different in Fish, so no, this particular garble will not work:

      But it is, of course, possible to write a (much more readable) version that will work in Fish.

      • ReveredOxygen
        link
        fedilink
        English
        arrow-up
        22
        arrow-down
        1
        ·
        1 year ago

        you can write a more readable version in any shell, it’s intentionally unreadable

        • Knusper@feddit.de
          link
          fedilink
          arrow-up
          11
          ·
          edit-2
          1 year ago

          Yeah, I meant, as an attacker, you couldn’t come up with a similarly unreadable version.

          At least, as far as I can tell, defining a function requires spelling out function and seems to require being defined on multiple lines, too.

      • affiliate@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        But it is, of course, possible to write a (much more readable) version that will work in Fish.

        the gentleman hacker

        • Knusper@feddit.de
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 year ago

          It hails back to the early days of the ampersand, from when it was basically still just Latin “et”: https://commons.wikimedia.org/wiki/File:Trebuchet_MS_ampersand.svg

          Personally, I do like this font (Fira Mono+Sans), because it still looks professional, without being so boring that I get depression from looking at it.
          But yeah, that ampersand is pushing it a bit, as I’m not sure everyone else knows that’s an ampersand…

      • dukk@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Doesn’t work in nushell, function syntax is different.

        Probably still possible, just written differently.