• spongebue@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      1 month ago

      I have no idea why you’d need that especially since return y() is pretty easy, but… I want it!

      (Actually, I guess a super simple way of overloading a method, like fun x() = x(defaultValue) could be neat)

      • calcopiritus@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        1 month ago

        This can also be a side product for code blocks being expressions instead of statements.

        In rust for example they are, so it’s not rare to see functions like:

        fn add_one(x: i32) -> i32 {
            x+1
        }
        

        This lets you do amazing things like:

        let x = if y < 0.0 {
            0.0
        } else {
            y
        }
        

        which is the same as x = y < 0.0 ? 0.0 : y

        But is much better for more complex logic. So you can forget about chaining 3-4 ternary operations in a single line.

        • [object Object]@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 month ago

          Lisp programmers seeing these ‘amazing things’:

          But yeah, every time I’m trying to do a ternary in Lua, I miss being able to just throw in an if. Thankfully it can be amended with Fennel.