It's just very weird and confusing that the concrete syntax has changed in a way that makes it harder to grok the actual semantics of what is going on. I get there are problems with currying, but this is just going to confuse the situation even more. 😫
Conversation
Have you thought about having a transitional Reason syntax for beginners, then encourage people to move to the more transparently curried version as they get a handle on things?
1
1
🤦♂️ - so how does one write tuples now? Is the syntax overloaded with function abstraction?
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
I do need to keep my pre-existing biases in check here too, and it's good you're having a go at challenging the status quo.
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.
Although of course Rust is a poor comparison wrt. parens, because there tupled parameter lists make sense semantically.
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
Sweet. Would be interesting to see how people react to comparisons if they could easily switch between them!
3
Show replies
The Elm-style syntax for Reason is just called OCaml.
1
1
5
OCaml has its types inline with the definition. Not really the same 🙄
1
Show replies



