That was what V2 was. Didn't work out that well compared to V3
Conversation
🤦♂️ - 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.
3
1
1
Sweet. Would be interesting to see how people react to comparisons if they could easily switch between them!
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
Agreed. Haskell/F#-style layout syntax is a bit of a pain to implement, even though it looks damn pretty.
imo, having function application use parens instead of a space introduces a lot of syntactic niceties - Foo(Bar(Baz), Bloop, fip + fop) looks nicer to my eyes than Foo (Bar Baz) Bloop (fip + fop)
Plus, OCaml's oddities around type application and variants being uncurried...
2
3
... means that having parens for function application mostly makes it so "like things look alike"
1
Show replies
Definitely! Making this scalable and accessible will open so much. Remains to be seen how effectively it can be implemented though.




