Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think we should have BOTH.

Use |> for the Hack proposal

and -> for F# -style.



I'd far rather save that for an alternative switch expression with pattern matching.

    const slowSum = (lst: {x: number}[]) =>
      switch(list) {
        [{x}, ...y]   -> x + slowSum(y) //not tail recursive
        [{x}, {x: y}] -> x + y          //alias second x to y
        [{x}]         -> x              //handle length 1
        []            -> 0              //handle length 0
      }


Having been watching, and a couple times playing with Rust... would definitely like a similar pattern matching system in JS. I still feel the C# syntax for this feels a bit alien `varname switch {...}`.


As an F# developer who also does some JS and Java this would confuse the hell out of me!

|> is the best operator


There's no need. The % placeholder can be used for a consise lambda syntax and would work with a F# application operator.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: