```
function foo(x, y) {}
foo(123, 'abc');
foo('abc', 123);
foo(
```
The tooltip that appears says `foo(x: number, string, y: number, string)`. So commas are used both to separate parameters, and to separate types in a union, making it hard to tell which is which at a glance. We should use some other syntax for unions - perhaps `x: number | string`.
function foo(x, y) {}
foo(123, 'abc');
foo('abc', 123);
foo(
```
The tooltip that appears says `foo(x: number, string, y: number, string)`. So commas are used both to separate parameters, and to separate types in a union, making it hard to tell which is which at a glance. We should use some other syntax for unions - perhaps `x: number | string`.