Re:Writing a JPEG Decoder in Rust – Part 2: Implementation I
by saosebastiao on Friday August 19, 2016 @04:51PM
(#12323372)
A module functor is nothing more than a higher order module...one that takes as a parameter some data structure that conforms to an interface (signature). Rust may not have constructs called module functors, but it definitely has constructs that are capably equivalent, as well as some that are even more powerful (a claim that applies to Scala as well)
For me, type inference, strong typing, and ADTs with pattern matching puts a language into the ML family quite easily.
Re:Writing a JPEG Decoder in Rust – Part 2: Implementation I
by gmfawcett on Friday August 19, 2016 @05:24PM
(#12323573)
All right, I concede.:) Thanks for sharing your views.
Re:Writing a JPEG Decoder in Rust – Part 2: Implementation I
by bjz_ on Friday August 19, 2016 @11:21PM
(#12325000)
Module functors were an SML feature - not really in the original 'ML' language. I would put Haskell in the ML family, and it doesn't have module functors. Rust has type inference, and a core type syntax and semantics that is heavily inspired by it.
Re:Writing a JPEG Decoder in Rust – Part 2: Implementation I
by Tyr42 on Friday August 19, 2016 @08:59PM
(#12324517)
I mean, Haskell doesn't have module functors, and I'd certainly claim Haskell is in the ML family. If Haskell isn't, what would be?
Re:Writing a JPEG Decoder in Rust – Part 2: Implementation I
by premium-concern on Friday August 19, 2016 @04:42PM
(#12323313)
I think ML-family is fine. Scala is much closer to ML than what people sort into the Algol-family or C-family groups.
I don't want this to devolve into a No True Scotsman debate, I just feel that the parent post -- which decried a lack of similarity between Rust and Scala because they were both in the ML family -- was founded on a weak premise.