News for hackers. Stuff that matters.
Re:Idiomatic Monads in Rust by nine_k on Thursday April 04, 2019 @02:20PM (#19575462)
I'd say that not enough functional extremism killed Scala. It tried to be all things for all purposes, compatible with every approach. So it grew into a incomprehensible monster of a language, full of subtle traps, like C++.

Making things compact and focused helps. Of mixed-approach languages, I see Kotlin's approach to integrating FP as more successful.

Re:Idiomatic Monads in Rust by ldng on Thursday April 04, 2019 @04:59PM (#19577043)
I'm sorry, I respectfully disagree on the "not enough" :-)

I think it is a matter of choice of audience. If you want pure functional languages, there are plenty that will rock your boat (Haskell, OCaml ...).

But, to my mind, I see Rust as a somewhat "modernised" C/C++ with, like Python, the most interesting and accessible parts of FP backed in. It is a balance and it is fragile. So, as I said, I hope that Rust will keep that fine line.

All that said, it only is my opinion, I might be wrong and the wider audience might be ready for "harder" FP. But I doubt it.

Re:Idiomatic Monads in Rust by leshow on Friday April 05, 2019 @09:26AM (#19582248)
I'm not sure what parts of FP python has you're referring to but it seems pretty lacking. It has a few combinators, that's about it.

The influence of "FP" on rust is really more like the influence of Haskell's type system. Rust is pretty far from a functional language but it does share a lot of type system features with Haskell: type classes, sum and product types, HM type inference

Re:Idiomatic Monads in Rust by nine_k on Thursday April 04, 2019 @06:01PM (#19577545)
Rust not only has some good parts from FP; they are added thoughtfully enough to keep them logically sound. So the fact that there are math-backed theories behind them still matters.

With C++, I can't say the same is true. Some libraries try to alleviate that, of course.

Re:Idiomatic Monads in Rust by rujuladanh on Thursday April 04, 2019 @08:26PM (#19578483)
What math-backed theories? Why do they matter? Do you mean for the compiler team or for the users?
Re:Idiomatic Monads in Rust by nine_k on Friday April 05, 2019 @02:01PM (#19585341)
Hindley-Milner type inference and linear types (used indirectly for lifetimes) spring to mind.
Re:Idiomatic Monads in Rust by rujuladanh on Saturday April 06, 2019 @04:04PM (#19592712)
Those are useful for compiler devs and language designers, not so much for the average user of the language.
Re:Idiomatic Monads in Rust by kod on Thursday April 04, 2019 @04:05PM (#19576529)
Kotlin doesn't even have real pattern matching. Calling it integrating FP is a sad joke.
Re:Idiomatic Monads in Rust by nine_k on Thursday April 04, 2019 @06:04PM (#19577561)
It's got algebraic types, and a typeclasses proposal (with a PR!) was actively worked on, last time I checked.
Re:Idiomatic Monads in Rust by kod on Friday April 05, 2019 @11:55AM (#19583762)
Algebraic types without being able to conveniently destructure them is maybe half the benefit at best.
Re:Idiomatic Monads in Rust by dmitriid on Thursday April 04, 2019 @05:31PM (#19577319)
Pattern matching has nothing to do with FP.
Re:Idiomatic Monads in Rust by kod on Friday April 05, 2019 @11:57AM (#19583777)
Only if you think algebraic types have nothing to do with FP, in which case you have a very idiosyncratic definition of FP.