module functors - this is the approach used in SML and OCaml, which both have very sophisticated module systems. It lets you do tons of stuff above and beyond these other approaches. It looks like OCaml may add some implicit resolution feature as well.
I think all of these approaches are compelling, and since the very beginning of Elm, it has not become clear which is "the right choice" for Elm. It is also true that if you go too crazy adding this stuff, you probably can never un-add it.
I think this talk is probably one of the best explanations I have given of the design philosophy that led to the "wait and see" approach we are taking on these topics. You can also search the archives of the elm-discuss to find the numerous and often tumultuous threads about these features.
The text was updated successfully, but these errors were encountered: