Conversation

Extra parens. No ideal for some but again to be clear: there's no syntax ambiguity in the new version
1
1
Whenever unambiguous we print to a simpler form, e.g. `switch ((foo, bar))` -> `switch (foo, bar)`. Both accepted at parsing time
1
1
Oh dear… Well I guess it remains to be seen whether the folks start hating it after the initial honeymoon period. How easy is it to explain `(f(x) >> f())` to people? (using Elm/F# composition operators /w tupled args here)
1
1
There's some annoyance after "honeymoon" period, but it's mostly about additional parens being hard to track with eyes - no complaints related to semantics.
1
We'll reduce the number of parens we print to mitigate that issue and then reevaluate how many problems the tuples being (like, this) still cause.
1
How hard would it be to create an alternate, Elm-style syntax for Reason? As somebody who writes a great deal of Rust, I kind of feel type signatures on top make much more sense for a type-driven programming style, as does dropping parens. Makes the code much cleaner and lighter.
3
1
Cc @ubsanitizer. Regarding alt syntax: not trivial right now (doable, but also needs to consider issues like ecosystem integration), but will get better in the future. Stay tuned
1
4
Easiest of course is going to be an s-expression based alternative syntax because the parsers/printers are so darn trivial to write.
2
2