Isn't it the same in ML though (using the same syntax in different contexts) ? Compare `| [a, b] => a + b` and `let my_list = [a, b]`. Same in JS, `let {a, b} = {a: 1, b: 2}` and `let d = {a, b}`. It's weird at first but then you just get used to it.
edit: updated list name since pipe ("|") and small L ("l") look kind similar in the code snippets.
edit: updated list name since pipe ("|") and small L ("l") look kind similar in the code snippets.