Hacker News new | past | comments | ask | show | jobs | submit login

It's more common for pattern matching Java's new syntax, Erlang, Elixir, StandardML (fat arrow), F#, Kotlin, Ocaml, Haskell, Rust (fat arrow), Ada (fat arrow), Scala (fat arrow), Zig (fat arrow), and probably a bunch of others too.

That's a lot of prior art for people to be comfortable with and as the fat arrow already has another meaning, overloading it in pattern matching might complicate things.




Right but then it would not be the same as in those other languages which use fat arrow anyway.

Another syntax for pattern-matching could be simply ':' instead of the arrow.

In the early days of Smalltalk the Smalltalk return statement was simply '^'. That could also be suitable for pattern matching. The idea would be that the switch statement returns something meaning pushing it up from the expression to whoever called it. So '^' might be good for that. Whereas pushing the results to the right to the next expression could be ->.

Just my preferences.




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

Search: